1
IDAEngine 2023-09-11 09:01:22 +08:00 1
Jenkins
|
2
Worldispow 2023-09-11 09:02:35 +08:00 1
小公司 ssh ,大公司 k8s ,但本质上没啥区别。
数据库不一定是主从,也可能是集群,比如 oracle rac 之类的。 |
3
wanderingaround OP 4 、应用上线了数据库多久做一次备份,数据库出现的问题直接在服务器上解决吗?会把上线的应用所在数据库当中的数据拉到测试库吗?
5 、应用部署有像设计数据库表那样有规约不?就是常见最佳实践? 6 、你所在的公司部署、维护、管理上线的应用常见做法是什么? |
4
ltfree 2023-09-11 09:28:46 +08:00 1
Jenkins + docker B 端业务 没必要主从 4h8g 基本差不多
|
5
mypchas6fans 2023-09-11 09:31:16 +08:00 1
1. CICD 老派的就 Jenkins 为代表;新派的就以代码 repo 为中心触发;
2. 看应用; 3. 看应用 |
6
Rache1 2023-09-11 09:43:49 +08:00 1
数据库直接用云服务商的
|
7
duojiao 2023-09-11 09:45:29 +08:00 1
为何讨论表设计或者并发以及多线程、io 以及业务当中代码如何写比较多,但是服务器部署、应用、管理、运维以及上线的数据库数据备份、troubleshooting 以及集群等问题比较少? ----------- 也很多的,可以了解下 CI/CD (持续集成)、devops 之类的,敏捷这个事情已经讨论了几十年了,了解下这些方向或许可以解你惑~
|
8
arrhenius 2023-09-11 09:51:17 +08:00
这是面试题来这里找答案了吗,哈哈哈,善用搜索
|
9
8355 2023-09-11 09:57:12 +08:00 1
1 、Jenkins
2 、1 主 1 从基本标配,读多增加从库数量 3 、测试双核 4g 生产 4 核 8g 常规,我司接口优化的好,高并发接口 10ms 以下机器数量更重要不追求单机 纯后端任务机根据系统运行情况做优化或者调整配置 4 、数据库上云每天凌晨快照备份,数据库出问题?能出什么问题?线上数据测试无法模拟?追求解决速度肯定是拉更好,但是取决于线上的量,同时也不规范长此以往出问题的概率更大,权限得不到控制。 5 、应用部署有啥规约,权限合并,代码审核,必要的话代码关联检查。 6 、不理解你想得到一个什么样的具体答案,Jenkins 配置好,开发者普通组员有测试环境构建权限,负责人/tl/技术经理/系统负责人有对应权限。 |
10
wanderingaround OP @8355 现实当中只用过比如代码更新了某一功能或者修改了啥,只用了哪个 windows IIS 部署了一下,更深度细致的有其他人搞,其他的比如博客啥的用过那个 nginx 啥的,就特别好奇现实当中这一些列运维操作如何搞得,想拓宽一点视野,因为没有从零到一搞过这部署应用这一套(比如上云啊,数据库主从、集群这些啊等等以及常见运维小技巧啥的),所以想知道主流的到底咋搞的?
|
11
wanderingaround OP @arrhenius >这是面试题来这里找答案了吗,哈哈哈,善用搜索
不是,搜索当然要搜索,但是实际常见咋做的更有意义,因为你知道懂了实际到底咋做的,你看哪些理论或者以及搜索出来的实操啥的更有意义,更能豁然开朗,如果不知道实际或者没听说过实际如何做的,哪些搜索东西还是不能学以致用的。而且质量也参差不齐的,当然这就说到你善用搜索了,但是你得知道一般这玩意咋做咋搞的,通用常见做法啊,搜出来大多都是具体业务下咋做的,当然又回到你说的善用搜索了,掌握了 google 搜索技巧以及一些关键字,但是有时候还是不能搜到你想要的答案,有点干货的东西不是那么好找的。 |
12
8355 2023-09-11 10:46:44 +08:00
@wanderingaround #9 容器+k8s 这样解释就好了
|
13
wanderingaround OP @8355 恩,好的,不过像您刚才分条别类比较详细的回答比较好,更细致,太粗旷了虽然也好,但是稍微具体更佳。
|
14
julyclyde 2023-09-11 10:51:40 +08:00 1
首先要打个包,不管容器还是 rpm 还是 jar ,一定要打个包
这个包就是“边界”,里面是各种具体的东西,外面是标准化的操作手段(复制单个文件,启动程序) |
15
28Sv0ngQfIE7Yloe 2023-09-11 11:03:59 +08:00 1
Gitlab + Gitlab Runner ( on K8S ) + minIO + sonakube + docker + K8S
|
16
28Sv0ngQfIE7Yloe 2023-09-11 11:04:19 +08:00 1
👆补充:istio
|
17
zyxk 2023-09-11 11:36:16 +08:00
@IDAEngine @ltfree @mypchas6fans @8355
请教,个人建站,之前一直使用 ftp 手动上传,前段时间才知道 github actions , 发现还挺方便的,push 代码到 github 时就可以自动上传腾讯/阿里云, 但是唯一的问题是 github 上传到国内腾讯云速度比较慢。 我想要简单的实现:push 到 github 时,自动上传到腾讯云等 sftp , 使用 Jenkins 合适吗,还是有其他的推荐,谢谢。 |
18
wanderingaround OP @mypchas6fans 您经历过的的项目主从和集群或者不用这些以及服务器台数和内存大小核数能讲讲吗,数据库您觉得上线了特别要注意的事项是那些?
|
19
GeorgeWai 2023-09-11 11:55:04 +08:00 1
思考清楚整个发布流程,写个脚本,一键完成,停会服问题不大;不停服发布需要做一大堆的事情来保证不停机发布,k8s 也一样,特别是涉及到消息生产消费的问题。至于 CI/CD 的问题,讨厌 jenkins ,自撸了个轮子,代码质量不咋样,未完待续,可以看下 https://github.com/weichenqi/OpsGoCD ,目前做到 java 项目可以上传镜像仓库,不喜勿喷。
|
20
8355 2023-09-11 12:09:14 +08:00
@zyxk
Jenkins 合适,刚开始不会配置自动可以在 ide 里安装 Jenkins 插件点击一个按钮实现手动部署。 其实更简单的是在 ide 里直接配置 ftp 的目录,ide 保存之后自动上传覆盖服务器文件,不要折腾这种才是最佳,适合只有一个开发者场景不需要版本管理,如果你需要多台电脑环境混合提交还是要 git+Jenkins 。 |
21
GeorgeWai 2023-09-11 13:20:54 +08:00
@zyxk 写个钩子程序配置到 git 仓库里,收到 push event 后,解析有用的数据,然后做自己想做的操作,jenkins 本质就是个壳子+插件,脚本还是要自己写,如果不需要壳子,jenkins 的用途就不大了。
|
22
nomytwins 2023-09-11 13:28:19 +08:00
我们用的纯 docker 环境
|
24
wellerman 2023-09-11 19:08:15 +08:00 1
哈 现在小公司不都是用 BT 么
|
25
wanderingaround OP @wellerman BT 是啥?
|
26
wellerman 2023-09-11 23:01:10 +08:00
@wanderingaround 宝塔面板
|