一时兴起,想写写互联网开发一年的心酸事,只谈技术,不谈业务;供参考,允许添瓦,不允许拍砖---痛~~~
------------------------------------------------永远不变的分隔符------------------------------------------------------
曾经:
传统项目:
Ø 一个表的数据量百W级别,好大一张表…(此处省略N字,你懂得)
Ø 并发量100;这么大并发量(再省略N字)
Ø 安全?(什么东西,没遇到过)
Ø 交互?(能用就行)
Ø 负载?(什么东西,要用?)
Ø CDN/IDC(没听说过)
Ø 网络分层(就一个WAR包,分啥层?)
Ø 动静态分离(同上)
Ø 缓存(没用过)
------------------------------------------------永远不变的分隔符------------------------------------------------------
现在 (将来?)
互联网项目:
1. 互联网开发有几大特点:
Ø 数据量大
Ø 并发量大
Ø 安全要求性高
Ø 用户分布广
Ø 热点数据多
Ø 发布要求快
Ø 静态数据随时发布
2. 你可能遇到的问题:
Ø 移动的用户访问好慢呀,电信的用户无法访问呀…
Ø 所有用户访问都好慢呀
Ø 用户被骚扰了,我们被攻击了
Ø 数据库挂了
Ø 外部对接系统调不通我们的接口了
Ø 线程冲高了
Ø CPU冲高了
Ø 内存冲高了,不够用了
Ø 请求连接大部分超时了
3. 你需要的一些解决方法:
Ø 系统有做CDN吗
Ø 系统的请求数量设置了吗
Ø 线程安全吗
Ø 接口安全吗
Ø SQL绑定变量了吗
Ø 热点数据放缓存了吗
Ø QUEUE设置的大小合理吗
Ø 线程池大小设置合理吗
Ø 数据库的大表可以分表;分区;加索引吗
Ø 静态的数据分离了吗
Ø 配置信息分离了吗
Ø 不稳定的功能做开关了吗
4. 大家在开发和测试的过程中不妨带几个问题去做,也许这样可以避免一些问题:
Ø 这个接口暴露在外面,有做安全验证吗(IP? SESSION? RSA? AES? MD5?)
Ø 这个页面的数据量大吗?一个页面的请求量大吗?(压缩? 减少请求?)
Ø 不同的网络能访问吗?(网络是互联互通的吗?要不要使用CDN)
Ø 这个页面纯静态的,要发布版本吗
Ø 这个是与外部的接口(防火墙开通了吗)
Ø 这个数据经常使用加缓存了吗? (REDIS ? MEMCACHE? )
Ø 这个请求并发量高(线程安全吗?线程设置合理吗?)
Ø 这个要做某个表的统计(这个表的数据大吗?要分表吗?要分区吗?)
Ø 这个查询语句(条件走索引了吗?能走单个分区吗?)
Ø 动态的SQL(这个有绑定变量吗?)
Ø 第三方控件(你了解清楚特性了吗?)
Ø 使用的框架的类(参数的设置了解清楚了吗?)
最后想说一句:无论做什么事情,没有一成不变的,只有不断的思考,不断的总结,你才能少犯错误,少走弯路,走向你想要的XX!
本文记录了一名开发者从传统项目到互联网项目的转变过程,详细阐述了两者之间的区别,包括数据量、并发量、安全要求、用户分布、热点数据、发布速度等,并提出了在互联网项目中可能遇到的问题及相应的解决方法,如CDN、负载均衡、数据库优化、静态资源分离等。

被折叠的 条评论
为什么被折叠?



