Web architecture stack

来源:互联网 发布:软件评测师考试报名 编辑:程序博客网 时间:2024/06/07 15:52

我心目中最好的框架组合是:

  •    表示层:spring mvc 3.1 + annotation
  •     控制层:spring 3.1
  •     持久层:hibernate 3.6 +jdbcTemplate
  •     后台列表控件:displaytag 1.2
  •     Ajax框架: DWR 3
  •     JS框架 : Jquery
  •     缓存机制:spring 3.1 cache + ehcache/memcached
  •     静态化机制: Freemarker静态化/spring mvc伪静态化
  •     页面技术: EL + JSTL +JSP
  •     安全框架 spring security
  •     搜索引擎: Lucene
  •     中文分词:IKAnalyzer
  •     模板引擎: apache tiles 2.22
  •      Linux、nginx、php、mysql,几乎是标配
  •     部署视图所需:
  •     数据库: mysql
  •     Web 服务器: windows 下用apache, linux 下用ngnix
  •     应用服务器: Tomcat  Jboss,tomcat,weblogic

常用的系统架构是:

Linux + Apache + PHP + MySQL + web负载均衡+数据库主从+缓存+分布式存储+队列

Linux+ Apache + Java (WebSphere) + Oracle

Windows Server 2003/2008 + IIS + C#/ASP.NET +数据库

大型动态应用系统又可分为几个子系统:

  1. Web前端系统
  2. 负载均衡系统
  3. 数据库集群系统
  4. 缓存系统
  5. 分布式存储系统
  6. 分布式服务器管理系统
  7. 代码分发系统

常用的工具列表

  • 集成ORM  hibernate ,jdo,toplink,apache ojb ,ibatis,jpa
  • 集成视图  jsp ,jstl ,tiles,velocity, freemarker,xslt ,pdf/excel,jaseperreports
  • 集成web框架  jsf struts tapestry webwork
  • 整合其它J2EE  webserives,ejb jms jmx jca 邮件抽象层,定时调度和线程池,java注解
  • 数据库 mysql ,sqlsever,oralce,sqlite,db2
  • Ajax框架  ext,jquery ,prototype,dojo,yui,
  • 容器 Jboss,tomcat,weblogic

 高级软件工程师的招聘条件

技能技巧要求:

熟练使用css语言,对css布局,编写有一定经验;

熟练使用jquery语言,能够编写jquery通用插件,且能够阅读复杂的jquery插件;

熟练使用spring framework,且阅读过部分sping相关源码;

熟悉Web应用多层架构设计;

熟悉OO分析设计方法和J2EE 设计模式,具备良好的沟通能力与表达能力;

mongodb,RabbitMQ,Lucence等技术经验更佳;

熟悉tocmat,nginx基本工作原理,能够阅读nginx源代码;或者熟悉tcp/ip协议细节;

能正常使用linux操作系统,简单管理linux系统;

能够根据产品需求文档,编写开发详细文档;

能够分析系统基本性能问题,能够mysql性能调优;

英语四级以上,能熟练阅读英文技术资料。

学习Web基础(HTML/CSS/JS)+服务器端技术(LAMP)

未来必然是Web的世界,学习Web基础的最佳网站是W3School

  • 学习HTML基本语法
  • 学习CSS如何选中HTML元素并应用一些基本样式(关键词:box model
  • 学会用 Firefox + Firebug 或 Chrome 查看你觉得很炫的网页结构,并动态修改。
  • 学习使用Javascript操纵HTML元件。理解DOM和动态网页(http://oreilly.com/catalog/9780596527402)网上有免费的章节,足够用了。或参看DOM  。
  • 学会用 Firefox + Firebug 或 Chrome 调试 Javascript 代码(设置断点,查看变量,性能,控制台等)
  • 在一台机器上配置Apache或Niginx
  • 学习PHP,让后台PHP和前台HTML进行数据交互,对服务器相应浏览器请求形成初步认识。实现一个表单提交和反显的功能。
  • PHP连接本地或者远程数据库 MySQLMySQL SQL现学现用够了)
  • 跟完一个名校的网络编程课程(例如:http://www.stanford.edu/~ouste​r/cgi-bin/cs142-fall10/index.php)不要觉得需要多于一学期时间,大学生是全职一学期选3-5门课,你业余时间一定可以跟上
  • 学习一个Javascript库(例如jQueryExtJS+ Ajax(异步读入一个服务器端图片或者数据库内容)+ JSON数据格式。
  • HTTP: The Definite Guide读完前4章你就明白你每天上网用浏览器的时候发生的事情了(proxy, gateway, browsers)
  • 做个小网站(例如:一个小的留言板,支持用户登录,Cookie/Session,增、删、改、查,上传图片附件,分页显示)
  • 买个域名,租个空间,做个自己的网站。

 

From<http://developer.51cto.com/art/201306/397987.htm> 

0 0