JRebel
Upcoming SlideShare
Loading in...5
×
 

JRebel

on

  • 2,030 views

 

Statistics

Views

Total Views
2,030
Views on SlideShare
918
Embed Views
1,112

Actions

Likes
0
Downloads
15
Comments
0

8 Embeds 1,112

http://odjug.blogspot.com 1094
http://odjug.blogspot.nl 6
http://odjug.blogspot.de 4
http://odjug.blogspot.ru 4
http://odjug.blogspot.gr 1
http://odjug.blogspot.hu 1
http://webcache.googleusercontent.com 1
http://odjug.blogspot.ca 1
More...

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

JRebel JRebel Presentation Transcript

  • Как забыть про редеплой Поганшев Сергей
  • План Редеплоймент - проблема? Каким образом JRebel решает проблему редеплоймента? Стоимость и альтернативы Практика использования JRebel LiveRebel
  •  Редеплоймент - проблема? Каким образом JRebel решает проблему редеплоймента? Стоимость и альтернативы Практика использования JRebel LiveRebel
  •  java.lang.OutOfMemoryError: PermGen space java.util.zip.ZipException: error in opening zip file DEPLOYMENTS IN ERROR: Deployment "vfszip:/D:/jboss- 5.1.0.GA/server/default/deploy/Enhanc ed-QC-ejb.jar/" is in error due to the following reason(s): java.lang.IllegalStateException…
  •  Редеплоймент - проблема? Каким образом JRebel решает проблему редеплоймента? Стоимость и альтернативы Практика использования JRebel LiveRebel
  • Настройка (Eclipse) Установить плагин Активировать лицензию Активировать сервер Отметить проекты Запустить сервер Profit!
  • За кулисами rebel.xml:<application> <classpath> <dir name="C:/project/workspace/TestRebel/bin"/> </classpath> <web> <link target="/"> <dir name="C:/project/workspace/TestRebel/webapp"/> </link> </web></application> Опции сервера:-javaagent:c:jrebeljrebel.jar
  • Примерpublic class TestClient { public TestClient() { System.out.println("Constructor"); } public static void main(String... args) { TestClient client = new TestClient(); while (true) { client.sayHello(); Thread.sleep(1000); } } private void sayHello() { System.out.println("Hello"); }}
  • Пример Constructor Hellopublic class TestClient { Hello public TestClient() { JRebel: Reloading System.out.println("Constructor"); class TestClient. } Hello2 Hello2 public static void main(String... args) { TestClient client = new TestClient(); while (true) { client.sayHello(); Thread.sleep(1000); } } private void sayHello() { System.out.println("Hello2"); }}
  • Пример Hello2 Hello2public class TestClient { Hello2 private String field = “field value”; JRebel: Reloading class TestClient. public TestClient() { field value System.out.println("Constructor"); field value } public static void main(String... args) { TestClient client = new TestClient(); while (true) { client.sayHello(); Thread.sleep(1000); } } private void sayHello() { newMethod(); } private void newMethod() { System.out.println(field); }}
  • JRebel Remote На сервереset JAVA_OPTS=-javaagent:/path/to/jrebel.jar-Drebel.remoting_plugin=true rebel-remote.xml:<rebel-remote> <id>MyFancyApplication</id> <url>http://servername:8080/MyFancyApplication/</url></rebel-remote>
  •  Редеплоймент - проблема? Каким образом JRebel решает проблему редеплоймента? Стоимость и альтернативы Практика использования JRebel LiveRebel
  • Альтернативы HotSwap Dynamic Code Evolution VM Javaleon fakereplace Glass Ghost Play! Framework
  • Альтернативы HotSwap Dynamic Code Evolution VM Javaleon fakereplace Glass Ghost Play! Framework
  •  Редеплоймент - проблема? Каким образом JRebel решает проблему редеплоймента? Стоимость и альтернативы Практика использования JRebel LiveRebel
  • Практика использования Нужно знать ограничения и особенности Unlocker @Transactional Служба продажи «Все таки редеплой»
  • Пример Hello2 Hello2public class TestClient { Hello2 private String field = “field value”; JRebel: Reloading class TestClient. public TestClient() { field value System.out.println("Constructor"); field value } public static void main(String... args) { TestClient client = new TestClient(); while (true) { client.sayHello(); Thread.sleep(1000); } } private void sayHello() { newMethod(); } private void newMethod() { System.out.println(field); }}
  • Пример Hello2 Hello2public class TestClient { Hello2 private String field = “field value”; JRebel: Reloading class TestClient. public TestClient() { null System.out.println("Constructor"); null } public static void main(String... args) { TestClient client = new TestClient(); while (true) { client.sayHello(); Thread.sleep(1000); } } private void sayHello() { newMethod(); } private void newMethod() { System.out.println(field); }}
  • Пример Hello2 Hello2public class TestClient { Hello2 private String field; JRebel: Reloading class TestClient. public TestClient() { field value System.out.println("Constructor"); field value } public static void main(String... args) { TestClient client = new TestClient(); while (true) { client.sayHello(); Thread.sleep(1000); } } private void sayHello() { newMethod(); } private void newMethod() { field = "field value"; System.out.println(field); }}
  • Практика использования Нужно знать ограничения и особенности Unlocker @Transactional Служба продажи «Все таки редеплой»
  •  Редеплоймент - проблема? Каким образом JRebel решает проблему редеплоймента? Стоимость и альтернативы Практика использования JRebel LiveRebel
  • Как забыть про редеплойВопросы? Поганшев Сергей