如题,egg.js刚1.0几个月,不知道现在用在生产环境中是否靠谱?
egg 社区版 1.0 ,对应阿里内网的 @ali/egg 是 3.0 版本了。
阿里系的绝大部分你能看到的页面,都是基于它的。支撑过前几年的双十一。
egg
和 @ali/egg
不是代码复制的关系,可以理解为 kernel
和 在阿里的发行版
的关系。
这得益于 egg 的框架定制机制,我们可以通过继承来封装自己的上层框架。
故 egg 不像其他开源项目那样,并不会要先在内网开发,过了一段时间后再同步到外部。
譬如前段时间我实现的 egg-bin debug
调试功能,就是直接在社区版中实现,内部同学只需要简单的重新安装下依赖就能使用了。
另外,虽然看到 egg 的版本还是 1.8.0 ,看起来好像就发了 8 个小版本。
但是我们遵循的是 Semver 规则,且所有的依赖都是通过 ^
引入的,所以如果你仔细观察的话,就会发现,次级依赖 egg-cluster
等都发过无数个版本了。
egg 是 微内核 + 插件模式
的,内核方面其实现在已经很稳定了,大部分的功能都在插件那边自行演进。
https://steam.niconico.in/ 已经跑在生产环境了。
@solarhell 看起来好高大上… 怎么首页没有一个服务说明?都不知道这个挂卡有哪些功能
一直在用,没发现有啥问题。bbaaoo.cn ,app的api是用的egg,还有后台管理系统
@solarhell 挂什么卡? 我也用steam玩游戏,但不知道啥叫做挂卡
@hezhongfeng 就是有的游戏会掉落卡片
@solarhell soga 看来你是日向的 我只玩csgo和DOTA2
@solarhell 你好这个怎么部署 , 是使用nginx代理的吗?可否分享一下对应的配置文件。
@mengxiaof 核心部分是这样
location / {
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_set_header X-NginX-Proxy true;
proxy_pass http://127.0.0.1:你的端口/;
proxy_redirect off;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_redirect off;
proxy_set_header X-Forwarded-Proto $scheme;
}
location ~ ^/public/ {
root /你的目录/app;
expires 24h; # 自己调整
}
config.prod.js
里还要设置 proxy: true
如果改了别的头看这里 https://eggjs.org/api/config_config.default.js.html
@atian25 可以考虑在文档里加入个生产环境的nginx配置例子