下载PDF
实例探究 > MS Learning & Consulting: Enhancing Development Efficiency with JRebel and Liferay

MS Learning & Consulting: Enhancing Development Efficiency with JRebel and Liferay

技术
  • 应用基础设施与中间件 - 数据交换与集成
  • 应用基础设施与中间件 - 中间件、SDK 和库
适用行业
  • 教育
  • Professional Service
适用功能
  • 商业运营
  • 产品研发
用例
  • 远程协作
服务
  • 软件设计与工程服务
  • 系统集成
挑战
Muhammed Shakir, the CEO/Founder of MS Learning & Consulting, faced significant delays in the development process due to the need for frequent redeploys. The application, which has a presentation layer and a web service layer, is hosted on Tomcat 7.x. The presentation layer is JQuery-based and interacts with Java components that make web service calls. The web service layer runs in a separate module and war file. Each time a change was made to a .java file in Eclipse, the context was reloaded, creating a new instance of WebAppClassLoader. This new instance did not contain the objects of class Class that held the bytecode of the classes used by the application, leading to a 'classloader hell' situation. This issue was exacerbated by the fact that Muhammed preferred a step-by-step coding and testing approach, which required frequent redeploys, further increasing the overhead and turnaround time.
关于客户
MS Learning & Consulting is a 17-year-old company specializing in consulting and training. The company spends around 8-10 days a month on training in areas such as Java Concurrency, Java Performance, and Liferay. The consulting work focuses on development and architecture best practices, including code reviews and architecture POCs. Muhammed Shakir, the CEO/Founder, has over 17 years of industry experience and is also an application developer. He designed and developed the portal for the company's website, which provides a wealth of course content and learning materials. The education platform uses Liferay, which Muhammed has been customizing and configuring for years, giving him a significant advantage in tuning the platform.
解决方案
To address the issue of frequent redeploys and the resulting delays, Muhammed implemented JRebel in the presentation layer of the application. JRebel allows for instant reloading of changes made to Java classes without the need for a full redeploy, significantly reducing the turnaround time. However, JRebel was not initially used in the web service layer. Muhammed is keen to implement pattern-matched includes/excludes to use JRebel in the web service layer without reloading the code generated by Liferay every time. This would further streamline the development process and reduce the overhead associated with frequent redeploys. By using JRebel, Muhammed can continue his preferred step-by-step coding and testing approach without the significant delays previously experienced.
运营影响
  • The implementation of JRebel in the presentation layer has significantly reduced the turnaround time for making changes and testing them.
  • Muhammed can now continue his step-by-step coding and testing approach without the significant delays previously experienced.
  • The use of JRebel has streamlined the development process, allowing for more efficient and productive coding sessions.
数量效益
  • Build time before JRebel: 20 seconds
  • App redeploy time before JRebel: 2 minutes
  • Amount of turnaround time spent per hour, per developer: 30-35 minutes

相关案例.

联系我们

欢迎与我们交流!

* Required
* Required
* Required
* Invalid email address
提交此表单,即表示您同意 IoT ONE 可以与您联系并分享洞察和营销信息。
不,谢谢,我不想收到来自 IoT ONE 的任何营销电子邮件。
提交

Thank you for your message!
We will contact you soon.