|
家住海淀 发表于 2014-6-27 17:12 ![]()
另外三个问题请教:
1)抛开功能性的范畴,对于非功能型的性能方面的是否属于架构设计的范围?如果是,这方 ...
1)
非功能性的需求一直都是架构的关注点,对于高并发、高频的访问需求,目前我们的解决思路主要是从编程模型和基础架构来着手,编程模型方面主要是引入非阻塞的编程模型,不再使用系统级的线程来处理并发请求,从而避免上下文切换的开销达到提升系统吞吐能力的作用,引入非阻塞的编程模型最直接的方式是使用专门的编程语言和运行时,例如erlang,node.js在网易杭研的服务端解决方案中扮演重要的作用,另外我们很早开始关注SEDA的编程模型,利用这种抽象来控制资源开销实现过载保护;在基础设施层面我们目前做的主要是引入LXC容器来满足高网络IO的服务需求,另外利用云计算平台的弹性我们能够在服务访问压力过大时快速进行扩容。可以看出我们的思路是充分利用计算资源的吞吐能力,因此这也是和节约成本的需求相一致的。当然提高性能是个非常复杂的话题,一百个系统有一百种方案,我这里提到的只是一些非常通用的思路。
2)
由于目前我所接触的云主要是作为基础设施存在的,所以从安全角度主要是为上层的安全性提供更好的基础,例如不同系统间的网络隔离在传统数据中心模式下是一个挺麻烦的事情,而通过网络虚拟化来实现不同租户网络间的隔离就很好的满足了这一需求,上层应用的安全保障依然和以前一样是个体系化的事情,所以我之前列出了一堆大家都看着挺熟的技术,这里的关键是要有能够保障这些技术能最大程度实施的方法,个人认为安全规范及支撑这些规范的工具集是非常重要的,同时需要有严格遵循安全规范的运维部门,在开发层面从前端到服务端需要统一的框架,需要有统一的认证服务,安全就是不能有明显的短板。
问题3没看的很明白啊~ |
|