`
leearnold
  • 浏览: 68480 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

我在Glassfish上部署企业应用5年的情况

阅读更多
首先说明虽然我写了10年的java代码了.但是我不是高手.经常还要翻书查查基础语法.看看String的API.

我们公司的管理系统是我一个人开发的,数据库用的Oracle.从最开始我就是用了Glassfish,原因很简单,Netbeans里面绑定了.
我只要登录Web管理界面,就可以管理很多东西,比如数据库连接池,配置多个虚拟主机服务,管理Http监听器.部署新的应用.我只用这些,曾经测试过集群,很简单就创建好了,但是因为公司就200多人用系统所以用不上集群,也就不管了.
每次有了新版本我都会花上20分钟重新装上新版本,我也不知道有什么改进,反正新的总是好的吧.
GlassFish运行在Windows 2003 Server上非常稳定,基本上不停电不用重启.应用上的数据量差不多数据库每天增加40m.不算上传的每天200MB左右的文件.文件我没有放在数据库里,直接存在应用服务器上了.

开发我也没有使用任何框架,就是JSP+javaBean .不过我开发了自己的开发平台,系统中类似的东西都抽象出来,比如日历,查询表格,图表.开发一个新功能很简单的继承一下虚拟类,实现几个接口,把对应的sql语句扔进去就好了.目前还没有碰到什么效率问题.页面上最近这1年开始用Jquery替换了以前写的很复杂的javascript.页面也大量的使用了ajax替换了整个页面提交操作.UI比以前好了很多.Http请求数量下降了很多.再加上年初数据库和应用服务器都换了新的机器,运行速度又快了,一个大约需要50次数据库请求的页面不到1秒就能出来.

以前用的Glassfish v2能和Netbeans集成,自己开发的时候如果是直接修改jsp页面代码不用发布就可以看到修改结果,如果是更改了JavaBeans需要增量发布或者重新发布就可以看到结果.发布到正式应用的服务器时唯一问题就是每次发布新版本,如果有人正在使用,会因为清除了服务器上的Session而被强制退出,由于使用频率很高,有时候出现bug,发布升级版的时候会招来大量的投诉....

大概1年前,系统因为需求变化太大,所以重新构架,我也重新评估了Glassfish v3最吸引我的新功能就是Save Session.虽然不能像以前那样通过Netbeans绑定远程发布新应用,但是只要把生成出来的War文件通过Web管理界面发布上去,并选择保存Session.就可以保留用户所有的Session而发布新应用了.这个功能真是感觉最有效的改进.投诉电话再也没有了.

看了论坛里很多关于和Tomcat的对比文章,其实我没有在2002年以后再用过Tomcat了.所以我也没有办法评价.不过有一次帮同事装一个Wiki的应用装了一个Tomcat5.0.修改配置还是需要自己动手改xml文件,我就觉得麻烦,虽然有人很享受用命令行和修改xml来配置应用服务器.但是我不喜欢,我比较喜欢考察实用性,什么能最快,最有效,最直接的解决问题我就用什么,就好像很多人用了EJB干jsp就足够的活...还是感觉技术够用就好了.没有必要追新的.
分享到:
评论
26 楼 jltest 2009-07-30  
真心的建议lz看一下spring

25 楼 liuchaoyong 2009-07-30  
zelsa 写道
yuyoo4j 写道
Iwishyou 写道
有点唏嘘, 我怎么感觉楼主是个苦行僧, 一个人独自修行?

看到中间,有个强烈的感觉: lz是个苦行僧, 自家独院的.

给LZ一点建议:看好现在公司前景的话,可以在公司坚守,稳稳的做一个IT部经理;否则的话,建议再多学点现在时髦的东西,不然出去以后的待遇可能会远不如现在。
一点点建议,可能是我乱说~~~

楼主别跳槽
24 楼 魔力猫咪 2009-07-29  
Glassfish是非常好的开源服务器产品。
我在开发的时候也爱用它,没有Tomcat无法在Windows下修改代码无法更新的麻烦。不过启动速度还是比Tomcat这些更加轻量的服务器慢,所以一般是建议一直开着服务器,每次代码修改后让系统自动更新好了。
楼主对生产系统的更新实在是要命。要是因为更新造成业务损失,早被炒掉了。这种更新应该放到晚上没人用的时候。
23 楼 dean_liu 2009-07-29  
可能自己理解能力有限,看不出楼主想说什么
不过中间了解到楼主的工作情况,不知道楼主会不会觉得寂寞?
22 楼 zelsa 2009-07-29  
yuyoo4j 写道
Iwishyou 写道
有点唏嘘, 我怎么感觉楼主是个苦行僧, 一个人独自修行?

看到中间,有个强烈的感觉: lz是个苦行僧, 自家独院的.

给LZ一点建议:看好现在公司前景的话,可以在公司坚守,稳稳的做一个IT部经理;否则的话,建议再多学点现在时髦的东西,不然出去以后的待遇可能会远不如现在。
一点点建议,可能是我乱说~~~
21 楼 sun201200204 2009-07-29  
软件就是用的,做出来才有用,过多的标准,过于追求完美,就在走向灭亡。
20 楼 yuyoo4j 2009-07-29  
Iwishyou 写道
有点唏嘘, 我怎么感觉楼主是个苦行僧, 一个人独自修行?

看到中间,有个强烈的感觉: lz是个苦行僧, 自家独院的.
19 楼 Dreamer 2009-07-29  
很欣赏楼主的实用主义~
18 楼 truesmile 2009-07-29  
logicgate 写道
Glassfish不错。不过楼主的帖子写的不咋地,难怪有人投隐藏。

我就很享受用命令行来配置应用服务器,而不用admin console。用sqlplus来配置oracle,而不用oem。用管理界面,往往是知其然不知其所以然。

嗯,应用程序服务器在命令行下提供的命令还是很多的,往往比管理控制台多。而且在命令行下可以使用操作系统带来的便利:比如我们Websphere集群中的一台服务器挂了,有时在管理控制台下无法重启,这时只能跑到命令行下kill -9了。
17 楼 logicgate 2009-07-29  
Glassfish不错。不过楼主的帖子写的不咋地,难怪有人投隐藏。

我就很享受用命令行来配置应用服务器,而不用admin console。用sqlplus来配置oracle,而不用oem。用管理界面,往往是知其然不知其所以然。
16 楼 whaosoft 2009-07-29  
呵呵 我去年把公司服务器也弄成了 Glassfish 很不错 不过我们不用netbean
15 楼 lnaigg 2009-07-29  
这篇文章想说明什么事情?
14 楼 InnocentBoy 2009-07-29  
中心不明确!
13 楼 l4borland 2009-07-29  
标题和内容有点不符,LZ如果再写深入点还差不多
12 楼 AllenZhang 2009-07-29  
一个有个控制台,上手容易点。
一个控制台极其烂,上手复杂些。但是熟悉了就很方便。
11 楼 george.SPACE 2009-07-29  
Glassfish内置JSF包,很牛B,而且它也比较傻瓜化,效率也还可以。
最大的问题是,体积比较大。
10 楼 george.SPACE 2009-07-29  
我也一直用Glassfish,不过,在Netbeans里调试web程序,重启Glassfish的时候,经常内存溢出就很烦人,当然,使用Tomcat也经常内存溢出。应该是Netbeans在重启服务器这个操作上有bug。
另外,最新的Netbeans 6.7.1,单独编译一个类的话,该类的图标还是没有编译的状态,比6.5退步了不少,我没看出来Netbeans6.7.1改进在哪里,只有 退步,难道它只为了加一个kenai就号称改进了很多??
9 楼 asialee 2009-07-29  
我现在也在学习glassfish的集群配置,楼主能否共享一下资料。
8 楼 TheMarine 2009-07-29  
没看懂lz意欲何为……
7 楼 Iwishyou 2009-07-29  
有点唏嘘, 我怎么感觉楼主是个苦行僧, 一个人独自修行?

相关推荐

    Glassfish应用服务器产品对比白皮书.pdf

    - **步骤5**:完成部署并进行测试验证,确保应用程序能够在Glassfish上正常运行。 通过上述分析可以看出,Glassfish不仅具备与Weblogic相当甚至更优的企业级特性,还拥有开源软件特有的灵活性和成本优势。对于寻求...

    GlassFish源码

    在这个特定的压缩包中,我们看到的似乎是GlassFish 2.1版本的源代码,这个版本发布于2010年,主要支持的是Java EE 5规范。 Java EE 5是Java企业级平台的一个重要里程碑,它简化了企业应用的开发,引入了许多新特性...

    Sun Glassfish v3 Administration 2009/12 PDF

    - **J2EE**:即Java Platform, Enterprise Edition,是一种用于开发和部署可移植、健壮、可伸缩且安全的企业应用程序的标准。 - **Java**:一种广泛使用的面向对象编程语言。 - **ebook**:指该文档是以电子书的形式...

    GlassFish Security

    该书的目标读者主要是应用设计师、开发者和系统管理员,他们希望了解如何在基于GlassFish的应用程序中实施安全措施。 #### 二、作者简介 **Masoud Kalali**,拥有软件工程学位,自1998年以来一直从事软件开发项目。...

    PacktPub.GlassFish.Administration.Dec.2009.rar

    10. **持续集成与自动化**:介绍如何将GlassFish集成到持续集成流程中,利用工具如Maven、Ant或Gradle自动构建和部署应用。 通过学习这份资料,无论是初学者还是经验丰富的开发者,都能对GlassFish服务器有深入的...

    glassfish-6_2007

    - **GlassFish v1**: 这是第一个正式发布的版本,实现了Java EE 5的完全合规,并且在2006年底发布了UR1更新以修复已知的问题。随着时间的发展,部署的数量也在不断增加。 - **GlassFish v2**: 新版本引入了许多新...

    Packtpub.GlassFish.Security.May.2010.rar

    其中的核心文件是《Packtpub.GlassFish.Security.May.2010.pdf》,很可能是由Packtpub出版社在2010年5月出版的一本关于GlassFish服务器安全的电子书。GlassFish是Oracle公司的一个开源应用服务器,广泛应用于Java EE...

    GlassFish和MySQL——完美开源组合.pdf

    GlassFish是一款基于Java EE 5标准的企业级应用服务器,而MySQL则是一款广泛应用的关系型开源数据库,两者在全球范围内都有着庞大的用户基础。 MySQL数据库因其高度的普及率和可靠性成为了开源软件的代表。它的特点...

    J2EE应用服务器标准

    J2EE提供了标准化的API和开发工具,使得开发者能够在不同的J2EE应用服务器上开发、测试和部署应用,常见的J2EE应用服务器有WebLogic、WebSphere、JBoss、GlassFish等。 #### 7. 动态适应性 J2EE应用服务器具备动态...

    Open Source GlassFish Software Appliance-开源

    将GlassFish部署在Ubuntu JeOS上,可以进一步优化资源利用率,减少不必要的操作系统服务,专注于提供应用程序服务器的核心功能。 **部署与管理** 在Ubuntu JeOS上安装和配置GlassFish,通常包括以下步骤: 1. **...

    glassfish-flyway:玻璃鱼+飞路

    5. **测试与部署**: 启动Glassfish,检查日志确认Flyway成功执行了迁移。在所有环境中重复这个过程,确保数据库的一致性。 通过这样的整合,我们可以确保即使在复杂的开发环境中,数据库也能随着应用程序的更新保持...

    payara-4.1.2.181

    Payara Server 4.1.2.181是2018年发布的一个稳定版本,它在GlassFish 4.1的基础上增加了额外的功能和改进,以增强可扩展性、安全性和管理能力。 描述中同样提到“payara-4.1.2.181”,这进一步确认了我们讨论的是...

    JavaEETutorial.pdf

    Java EE 5 版本发布于2006年,是Java EE发展历史上的一个重要里程碑,引入了许多新特性,极大地简化了企业应用的开发过程。 ### Java EE 5的关键特性 #### 1. **简化的企业级开发** Java EE 5 的一个重要目标是...

    ai-depth.rar

    1. "Learning Blind Video Temporal Consistency.pdf":这可能是关于无监督学习方法在视频时间一致性上的应用,可能涉及到如何让算法在没有先验知识的情况下理解和保持视频帧之间的连贯性。 2. "DMAP-Review of ...

    javaEE_5的四个jar包

    在实际开发中,Java EE 5还依赖于应用服务器,如Tomcat、GlassFish或JBoss等,这些服务器会提供运行Java EE应用所需的上下文和服务。开发者需要了解如何配置这些服务器,以及如何将应用程序打包和部署到服务器上。...

    Java EE 5 SDK

    Java EE 5 SDK通常搭配应用服务器一起使用,如GlassFish或JBoss,开发者可以在这些服务器上编写、测试和部署应用程序。应用通常被打包成WAR(Web Archive)或EAR(Enterprise Archive)文件,然后通过应用服务器的...

    EJB应用开发详解+书中源码

    企业级JavaBeans(Enterprise JavaBeans,简称EJB)是Java平台上的核心组件,用于构建分布式、事务处理、安全性和可伸缩性的企业级应用程序。EJB规范定义了服务器端的组件模型,使得开发者能够专注于业务逻辑,而将...

    各种版本tomcat压缩包

    9. **热部署**: Tomcat支持热部署,即在不重启服务器的情况下更新Web应用。只需将新的WAR文件放入webapps目录下,Tomcat会自动检测并部署新应用或更新现有应用。 10. **与Java EE的关系**: 虽然Tomcat只是一个...

Global site tag (gtag.js) - Google Analytics