zoukankan      html  css  js  c++  java
  • 如何开发高性能低成本的网站之技术选择

    每个企业都是慢慢发展起来的,在起步阶段成本是一个不得不考虑的重大问题 。直接入正题:

    前台框架:  ASP.NET MVC + Jquery + Json + Flash , ASP.NET MVC 高性能速度快,Jquery 简洁成熟的Js基础框架 , Json 数据格式体积小 ,传输快。Flash 用于开发复杂的页面交互应用。

    缓存方案

    Memcached , 基于Key-Value的传统Cache储存方式 , 高性能  而且它内置LRULeast Recently Used)机制自动维护缓存数据,从而 提高缓存的性能和负载能力。

    MongoDb , 数据库级别的缓存解决方案 , 适合海量的数据缓存 , 支持查询

    权限模型:

    基于ASP.NET MVC RBAC , 控制对象粒度到Action , 控制操作粒度 是否能访问。权限基于Cookie/缓存记录认证信息 , 在用户登录时就计算出改用户的所有权限并缓存。

    (优点:直接通过AOP做横切面控制,不需要设置权限点 ;缺点:无法控制到同一个Action有增、删、改、查等更细的操作粒度,不同的操作需要制作不同的Action , 表面上要多几个Action , 其实这样做职责更加分离,更加符合OO的观点)

    多语言解决方案:

             服务端基于资源文件,完美配合ASP.NET MVC 前段框架 ,进行各项数据验证及提示等

             客户端同样基于资源文件Page页面采用script 导入序列化的资源文件 ,按名词空间引用 ,如Resources.Book.AreYouSure Js变量对于flash等可以通过Json 传递。

    数据通信:

    服务端,WCF , WebService

    客户端,  HttpRequest 数据类型Json

     

    数据访问层:标准接口化,不对数据实现依赖。

             Entity Framwork , 适合只使用SQL Server 的解决方案开发效率最高

             NHibernate , 支持多数据平台 ,开发效率较高 , 性能一般

             ADO.NET, 完全靠开发实现,开发效率低 , 性能较高

             性能和效率按正常水平评估

    解耦办法:

             IOC , 依赖注入 ,

             AOP , 横切面拦截 ,权限中的推荐做法

     

    负载均衡:

             Nginx , Web前端的负载均衡解决方案 , Nginx 开源免费,高性能 .

    页面提速:

          实时性要求不高的页面可以做静态化 ,页面的部分动态内容可以通过SSI处理 ,然后数据更新就主动生成页面。页面静态化,通过XSLTCMS生成机制可以对生成的页面内容进行压缩。

          静态资源文件拆分出去做独立站点,加上服务端的GZIP/Deflate压缩等操作,最好配上二级域名,已加快客户端HTTP下载.更加方便以后做CDN.

    SSO:

          如果有多个站点,统一认证可以降低开发维护等成本.

     

    数据库:

          Mysql ,  成熟,开源.

  • 相关阅读:
    LUOGU P4113 [HEOI2012]采花
    LUOGU P4251 [SCOI2015]小凸玩矩阵
    bzoj 3230 相似子串——后缀数组
    bzoj 4453 cys就是要拿英魂!——后缀数组+单调栈+set
    洛谷 5061 秘密任务——二分图染色
    bzoj 4104 [Thu Summer Camp 2015]解密运算——思路
    bzoj 4319 cerc2008 Suffix reconstruction——贪心构造
    poj 3415 Common Substrings——后缀数组+单调栈
    CF 504E Misha and LCP on Tree——后缀数组+树链剖分
    bzoj 4278 [ONTAK2015]Tasowanie——后缀数组
  • 原文地址:https://www.cnblogs.com/haiyabtx/p/2371873.html
Copyright © 2011-2022 走看看