codecamp

七、总结

总结

数据闭环

数据维度化

拆分系统

Worker无状态化+任务化

异步化+并发化

多级缓存化

动态化

弹性化

降级开关

多机房多活

多种压测方案

Nginx接入层线上灰度引流

接入层转发时只保留有用请求头

使用不需要cookie的无状态域名(如c.3.cn),减少入口带宽

Nginx Proxy Cache只缓存有效数据,如托底数据不缓存

使用非阻塞锁应对local cache失效时突发请求到后端应用(lua-resty-lock/proxy_cache_lock)

使用Twemproxy减少Redis连接数

使用unix domain socket套接字减少本机TCP连接数

设置合理的超时时间(连接、读、写)

使用长连接减少内部服务的连接数

去数据库依赖(协调部门迁移数据库是很痛苦的,目前内部使用机房域名而不是ip),服务化

客户端同域连接限制,进行域名分区:c0.3.cn  c1.3.cn,如果未来支持HTTP/2.0的话,就不再适用了。

六、遇到的一些坑和问题
温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }