|
架构,算法,这些都非常影响性能的,这些架构师在做架构的时候都会考虑。
另外比较重要的就是SQL语句的书写,这个也会直接影响到性能,一条差的SQL语句其对性能的影响是致命的,特别是现在企业级的这种上100G的数据库。
另外就是开发人员在写代码的过程中必须要有这个意识,不能只单单实现其功能。所以我们说:写代码很容易,写出好代码就需要很强的实力了。
比如我们在开发WEB应用时,从代码角度来说对性能的影响大致会有这些方面:
1) 良好的数据库设计(第三范式是足够规范了,但是会很影响性能,这方面得有所权衡)
2) 缓存,一个大型的网站不用缓存简直不敢想像后果会有多严重。
3) SQL语句,最简单的一点:不到万不得已可别用select * from XXX,或者如果SQL用内置函数就可以办到的,那么就别在代码中去处理
4) Session,不可滥用,服务器要维护很多Session变量会耗费很多资源的
5) 如果能调用外部程序如Dll, Jar, ActiveX等来做运算处理的,就别把它写在页面代码中
6) 多用客户端程序处理一些验证或者显示逻辑,如Javascript, DHTML等,客户端能处理的事情就别去问服务端要。
7) 注意内存的回收,否则内存溢出是必然的
8) 如果用到中间件,那么对中间件的设置,调优是非常重要的
9) 对数据库的各类性能参数设置(很简单,比如我们用Access这种小数据库,对游标的设置(读写,锁定等)都会消耗资源,能只读的就用只读就好了,大到Oracle 这种数据库,可设置的参数可就太多了。
10) 不要频繁读写服务器磁盘,能放到内存中,然后一次性读写最好。
其实这些都是开发阶段我们要考虑的性能相关的问题,如果只追求代码的功能完成,那么写代码的人一定不是一个合格的开发人员。如果只考虑最优化性能,而忽略了用户体验,那么也不是一个合格的开发人员。关于如何设计性能方面的方法还有很多,一起探讨吧。 |
|