当前位置:  软件>java软件

58同城的web框架 Argo

    来源:    发布时间:2015-02-25

    本文导语:  Argo是开源的web框架,目前Argo支撑着58同城几乎所有的web站点,包括wap和手机端的访问等,现在wf每天处理10亿级的请求。经过长时间的运作与运行,证明Argo是一个可靠的、高效的web框架。 Argo在wf做了大量优化和重构,以适应各...

Argo是开源的web框架,目前Argo支撑着58同城几乎所有的web站点,包括wap和手机端的访问等,现在wf每天处理10亿级的请求。经过长时间的运作与运行,证明Argo是一个可靠的、高效的web框架。

Argo在wf做了大量优化和重构,以适应各组织软件开发的个性化需求,提升了系统性能,具有更好的可扩展性。Argo的开源反过来也促进wf2.0的开发。

哲学观 (philosophy)
  • 约定优于配置,减少软件开发人员需做决定的数量,获得简单的好处,而又不失灵活性。Argo体系中有且只有一个组织级约定,规定包的命名,配置文件路径,日志文件路径等。组织的约定是不容侵犯,每个项目在组织级约定下工作。组织级约定建议以jar形式下发给各项目。
  • 简单,Argo可以不需要任何配置文件,项目代码结构简单,易于维护。
  • 纪律,包和类的命名都受组织级约定的控制,任何违反约定的行为可能导致系统无法正常运行。
  • 系统特点 (features)
  • SEO友好的URL结构,Argo天然支持RESTful的url结构,并能自动匹配合适的参数;
  • 零配置,甚至你不要web.xml就能在tomcat上运行;
  • 插拔式组件架构,可以灵活扩张功能;
  • 高安全性,提供集群模式下,避免ip欺骗等功能。
  • 系统约定 (convention)

    Argo不是一个通用的web框架,一个问题解决方案可能有很多,但在Argo中只提供一种解决方案。Argo在以下约定中工作:

  • servlet 3.0环境,主要针对Tomcat 7.x;
  • 基于guice的Ioc,组织和项目可以各提供一个module注入模块,而且module的命名必须符合约定;
  • maven依赖,项目的代码体系和maven默认代码体系一致,maven以插件提供开发过程中所需要的开发运行环境(jetty:runtomcat7:run)。

  •     
     
     

    您可能感兴趣的文章:

     
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3