实习中结

罗嗦


开始实习至今也有差不多有个月了(实际工作时间是一个多月),见识了很多新的事物,学到很多新的知识。公司搬到了T.I.T创意园。。。 等等,很多感觉是自己一个人在学院撸码get不到的。 感觉自己的心态有了变化, 最近要准备 BAT 的面试, 那是我的梦想,所以感觉这段实习大概要结束了,做一个中期总结吧。

实习的时间, 工作很不稳定, 有时候很空闲, 有时候有任务了, 就要加班到凌晨, 这都是理解的, 毕竟自己在学校做外包的时候,也会遇到各种紧急状况。 空闲的时候,就自己一个人上网学习, react,ES6的相关知识, 我也是在这段时间吸收的。

收获


收获很多, 特别是近期的一个项目 — 微信好友关注度的统计, 说真的, 我没预想到这个项目的访问量会那么大。 一天的访问量(PV)达到了330万,访问人数(UV)也达到了98万。要不是紧要关头,数据库挂掉了,数据很可能上升到100万UV/日,每一次访问基本都要插入数据库,并查询大量集合(mongodb) 如此,我也正式见识了性能带来的问题,以前的东西,访问量太少了,根本感觉不到性能带来的影响。

逻辑处理

代码的处理逻辑, 在人数 2000UV/分的时候,做了一次梳理, 将一些向自己服务器调用的请求,引向了另外一个服务器,请求数基本减少了一半(可怕)。 在后台的定时任务, 将打查询任务分成了很多个小查询任务,因为是后台定时任务,不需要考虑响应时间(没有用户在等待),分成小任务,减轻mongodb的压力

数据库处理

上面有谈到一个分子任务处理。 还有就是 分表处理, 有一个集合每一次访问都要插入数据, 想想一天 330万的访问量,这个集合非常大了,所以前面说到数据库服务器挂掉了,也是因为这个集合太大了 所以,我们后来做了分表处理,用一定的关联性(比如时间段),将一个大集合分成很多个小集合,这样子,数据库的压力大减

由于用到的mongodb数据库, 一开始寻找的数据库解决方案是 读写分离 , 或者 主从数据库,但是应为连接问题,最终分表处理。虽然没有用到这些技术,但是至少也有了认知 数据库索引,好吧,这个是服务器管理者,我们的ceo做的, 数据库方面的优化,基本都是他在动手处理。 数据库索引,我没看到他是怎么处理的, 以后一定要学习,数据库查询的性能飞涨

服务器优化

用的是nodejs 的 express , 一开始使用 单线程的 ,想着用pm2启动,挂了也会重启,就没有写cluster,然而,总算见识到,cluster的作用并仅仅是防止线程突然挂掉, 是真正的能够提升性能(使用后cpu所有核利用率基本100%)

nginx负载均衡, 看了一眼ceo的ngnix负载均衡设置, 指向 ip 和设置 weight,可以做到把用户请求 分摊出去, 用多台服务器处理。

总结

先那么多啦, 学了很多

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏纯洁的微笑

面试为什么需要了解JVM

随着互联网的发展,高并发高可用、快速响应成为软件的必须,而JVM与这些有着密切关联。之前JVM系列好多都是一些由于STW影响到快速响应问题,忽然网站慢一下(抖动...

1051
来自专栏牛客网

BAT面经

因为也许我当时因为要实现梦想只有一条途径,可如果你选择了一条路,这并不意味着你要放弃其他的方式。——《跳出我天地》

1783
来自专栏京东技术

多数据模型数据库 | 应用实例解析

吕信,京东商城技术架构部资深架构师,拥有多年数据产品研发及架构经验。在京东及国内主导过多种数据产品的开发及社区建设,积极活跃于数据产品领域,对数据库及大数据领域...

1971
来自专栏PHP在线

8 个不得不说的 MySQL 陷阱

Mysql安装简单,速度较快,功能丰富。另外它还是开源运动的标杆,它的伟大成就向我们展示了一个成功的公司是可以建立在开源代码之上的。 然而用过mysql的人都曾...

3795
来自专栏张善友的专栏

MS MVC框架漩涡中的MonoRail未来

上个星期,Hamilton向微软MVC团队通报了Castle团队从现实应用中获得的所有复杂和不直观的需求,并告知他们如何处理这些事情。另外他还开发了一些集成案例...

1965
来自专栏帘卷西风的专栏

开源CEGUI编辑器之二(MFC重写的ImagesetEditor)

转载请注明出处:帘卷西风的专栏(http://blog.csdn.net/ljxfblog)

1031
来自专栏跨界架构师

如何一步一步用DDD设计一个电商网站(二)—— 项目架构

    上一篇我们讲了DDD的核心概念(附上链接),并且设计了我们的上下文映射图,那么接下来就准备开始立项了,本篇文章的部分知识点可能对一部分人来说比较基础,可...

4371
来自专栏程序人生

Let it crash: 因为误解,所以瞎说

今天我知乎的时间线上反复出现了一个流毒甚广的帖子:「应该如何理解Erlang的“就让它崩溃”思想?」,十几个不懂装懂的回答,赞竟然都不少。 严格意义上来说,我之...

3757
来自专栏杨建荣的学习笔记

改和看别人的代码是一种什么感受

工作里面可能会沉淀下来很多的东西,比如文档,代码/脚本,或者图片,甚至你留下的趣事或者“案底”。 对于修改代码,我很多年前就体验过一次,是修改自己写的代码,记...

3978
来自专栏分布式关系数据库探索

分布式关系数据库探索 - NewSQL 演化过程

回味过去,展望未来,开始分布式数据库探索之旅,首先了解历史,本文大致梳理一下数据库发展过程,从1970年到2018年,数据库的发展过程,仅供参考,交流和学习,感...

5351

扫码关注云+社区

领取腾讯云代金券