1
realpg 2015-07-23 15:03:01 +08:00
我不是搞python的,对你说的问题细节不太清楚
我只有一个问题 为啥你们公司允许开发环境使用跟生产服务器不一样的版本的东西? |
2
clino 2015-07-23 15:06:29 +08:00 via Android
没有一个和生产环境一致的测试环境先试试看?
|
3
mhycy 2015-07-23 15:08:13 +08:00
别的不说,改线上环境居然能造成19分钟停机,入口负载均衡怎么做的,没备机做平滑升级?
|
4
nellace 2015-07-23 15:18:34 +08:00
19分钟就是大事故了,肯定是个大厂啊
|
5
neoblackcap 2015-07-23 15:29:25 +08:00
我只是好奇,为什么你们生产环境可以连开发环境的版本号都对不上
|
6
learnshare 2015-07-23 15:52:55 +08:00
必须保证开发和运行环境统一,还得随手把第三方包升级了
|
7
ChangxuBlack 2015-07-23 15:55:04 +08:00
或许可以试试用setuptools管理依赖
|
8
glasslion 2015-07-23 15:55:42 +08:00
开发环境和生产环境的版本号都能搞得不一样, 出大事故不是早晚的事.
而且当你们发现了版本号不一致的问题后, 为什么不第一时间回退到 0.7.2 这个老的可行版本, 反而去尝试去安装 1.0 这个你们从来没有使用和测试过的版本. |
9
yueyoum 2015-07-23 16:03:45 +08:00
新人都这样, 遇到问题 不要慌
先去问老员工。 当年 我去线上 重启服务, 没看清, 把其他服务给重启了, 而且重启还失败了。。。 |
11
laoyuan 2015-07-23 16:35:01 +08:00
怪不得 Rails Gemfile 里面的gem 后面都跟着版本号,我初学觉得好麻烦啊
|
13
julyclyde OP @mhycy 访问到我改的那个位置的时候才出错,错误信息是无法import jwt库,当时没理解为什么还有jwt。我还以为是别人的bug就没当场回滚。有部署权限的人太多也是个麻烦事啊
|
14
julyclyde OP @ChangxuBlack pip就是setuptools的包装吧。给点儿建设性的意见
|
16
julyclyde OP @learnshare 我这就是随手升级了才坏事的。
|
17
poorguy 2015-07-23 17:07:03 +08:00
我就弱弱的问一下,没用virtualenv之类的吗
|
19
tabris17 2015-07-23 18:31:18 +08:00
为了避免麻烦,我把第三方库的代码复制出来和代码放一起打包了
|
20
ChangxuBlack 2015-07-23 22:27:05 +08:00
|
21
laotaitai 2015-07-23 23:01:06 +08:00
上Docker, 把你开发搭建好的环境, 弄到线上去. 再也没有"我这里运行得好好的, 为嘛到你那里就不行呢"的问题了.
|
23
julyclyde OP @poorguy 你想得过远了。virtualenv可以用来维持一个稳定体系,我这里也用了。但往里加新包时的混乱,用不用v都会发生的
|
24
julyclyde OP @ChangxuBlack 目前有requirements 但r和setup.py都只能维持一瞬间的和平,很快还会被打破的
|
26
9hills 2015-07-24 00:45:02 +08:00 via iPhone
Requirments 里不指定版本的锅。
|
27
julyclyde OP @9hills requirements里只写了我自己用的包。用的包依赖的其它包没写,就载在这里
|
28
HowardMei 2015-07-24 09:24:09 +08:00 3
一般的python库依赖用 https://pex.readthedocs.org/en/latest/ 打包就可以了,
如果还依赖系统库,可以考虑 https://github.com/spotify/dh-virtualenv 打成deb包[alien deb->rpm] 有篇文章讲了这个问题: https://nylas.com/blog/packaging-deploying-python |
29
julyclyde OP 终于钓来一个有含金量的回复
|
30
ChangxuBlack 2015-07-24 22:44:16 +08:00
@julyclyde 有道理,不过setup.py可以限定版本号。。。确实不好解决
|
31
qqblog 2015-07-25 05:26:11 +08:00
没看懂1.0.0版本到底有什么问题,为什么没能编译libffi-dev库?难道是centos问题?只是你有问题吧,依赖并没问题,熟悉就好啦
|