SlideShare a Scribd company logo
Migrating to Openshift
Our Challenge
Reyhan Fabianto
Software Engineer, DOKU
Migrating to Openshift - Reyhan Fabianto
Migrating to Openshift - Reyhan Fabianto
recommends only up to 3 instances
ROUTER
BROWSER
Create session
Retrieve session
SESSION NULL
ROUTER
BROWSER
Create session
Retrieve session
SESSION NULL
Performance
Scalability
Availability
128 applications
Filters
public void doFilter(ServletRequest originalRequest,
ServletResponse originalResponse, FilterChain chain)
throws IOException, ServletException {
// Insert code here
}
<filter>
<filter-name>SessionFilter</filter-name>
<filter-class>com.amadeus.session.servlet.SessionFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>SessionFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
Migrating to Openshift - Reyhan Fabianto
Javaagent
java.lang.instrument
JAVA_OPTS=“$JAVA_OPTS -javaagent:session-agent-0.4.7.jar=
provider=com.amadeus.session.repository.redis.JedisSessionRe
positoryFactory,timeout=1800,log=debug"
Migrating to Openshift - Reyhan Fabianto
public class Hello {
public void run(String message) {
System.out.println("Hello " + message);
}
public class Hello {
public void run(String message) {
System.out.println("Hello " + message);
}
}
public static void main(String[] args) {
Hello hello = new Hello();
hello.run(args[0]);
}
ClassPool cp = ClassPool.getDefault();
cp.importPackage(“redis.clients.jedis.Jedis");
CtClass cc = cp.get("other.Hello");
cc.addField(CtField.make("Jedis jedis = new Jedis();", cc));
CtMethod cm = cc.getDeclaredMethod("run");
cm.insertAfter("jedis.set(message, message + ” saved in Redis”);");
byte[] byteCode = cc.toBytecode();
cc.detach();
ClassPool cp = ClassPool.getDefault();
cp.importPackage(“redis.clients.jedis.Jedis");
CtClass cc = cp.get("other.Hello");
cc.addField(CtField.make("Jedis jedis = new Jedis();", cc));
CtMethod cm = cc.getDeclaredMethod("run");
cm.insertAfter("jedis.set(message, message + ” saved in Redis”);");
byte[] byteCode = cc.toBytecode();
cc.detach();
return byteCode;
Migrating to Openshift - Reyhan Fabianto
Thank you

More Related Content

PDF
2011/1/27 Amazon Route53 使ってみた@第1回クラウド女子会
PDF
Introduction to Celery
DOCX
Como instalar aeroo en open erp 6
PPTX
Salesforce Integration using REST SOAP and HTTP callouts
PDF
Unit Testing with Jest
PDF
How To Construct IF and Else Conditional Statements
PDF
How To Create PowerShell Function Mandatory Parameter and Optional Parameter
2011/1/27 Amazon Route53 使ってみた@第1回クラウド女子会
Introduction to Celery
Como instalar aeroo en open erp 6
Salesforce Integration using REST SOAP and HTTP callouts
Unit Testing with Jest
How To Construct IF and Else Conditional Statements
How To Create PowerShell Function Mandatory Parameter and Optional Parameter

What's hot (20)

PDF
Autotools
PPTX
Ansible Network Automation session1
PDF
aiohttp intro
PDF
Windows PowerShell Basics - How To List PSDrive Info
PDF
Deixa para depois, Procrastinando com Celery em Python
PDF
How To Create Power Shell Function Mandatory Parameter Value
PDF
asyncio community, one year later
PPTX
Orleankka Intro Circa 2015
PDF
React storybook
PDF
Celery: The Distributed Task Queue
PDF
Ansibleではじめるサーバー・ネットワークの自動化 (Ansible2.7情報つき)2018/10/12
PDF
Painless JavaScript Testing with Jest
PDF
On connection lost
PPTX
Debugging & profiling node.js
PPTX
Laravel 5.5 dev
DOCX
How to install squid proxy on server or how to install squid proxy on centos o
PPTX
How to Install Odoo 11 on Ubuntu 16.04?
PDF
Basics of Akka
PDF
Writing & Sharing Great Modules - Puppet Camp Boston
PDF
Flask With Server-Sent Event
Autotools
Ansible Network Automation session1
aiohttp intro
Windows PowerShell Basics - How To List PSDrive Info
Deixa para depois, Procrastinando com Celery em Python
How To Create Power Shell Function Mandatory Parameter Value
asyncio community, one year later
Orleankka Intro Circa 2015
React storybook
Celery: The Distributed Task Queue
Ansibleではじめるサーバー・ネットワークの自動化 (Ansible2.7情報つき)2018/10/12
Painless JavaScript Testing with Jest
On connection lost
Debugging & profiling node.js
Laravel 5.5 dev
How to install squid proxy on server or how to install squid proxy on centos o
How to Install Odoo 11 on Ubuntu 16.04?
Basics of Akka
Writing & Sharing Great Modules - Puppet Camp Boston
Flask With Server-Sent Event
Ad

More from DevOpsDaysJKT (11)

PPTX
The Universe as Code - Dave Kerr
PDF
Not a DevOps talk - Coté
PDF
The State Of DevOps 2018 - Matt Ray
PPTX
Scrum around the world - Red Tangerine
PPTX
How Honestbee Does CI/CD on Kubernetes - Vincent DeSmet
PDF
Healthy DevOps - Masto Sitorus
PDF
DevOps Practice in Nonprofit - Abdurrachman Mappuji
PDF
Dockerize Your Web Application Stack - Salman El Farisi
PPTX
DevOps Adoption: Challenges & Opportunities
PDF
Batch size matter - Thomas Rothe
PPTX
DevOpsDays Jakarta Igites
The Universe as Code - Dave Kerr
Not a DevOps talk - Coté
The State Of DevOps 2018 - Matt Ray
Scrum around the world - Red Tangerine
How Honestbee Does CI/CD on Kubernetes - Vincent DeSmet
Healthy DevOps - Masto Sitorus
DevOps Practice in Nonprofit - Abdurrachman Mappuji
Dockerize Your Web Application Stack - Salman El Farisi
DevOps Adoption: Challenges & Opportunities
Batch size matter - Thomas Rothe
DevOpsDays Jakarta Igites
Ad

Recently uploaded (20)

PPTX
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
PDF
Heart disease approach using modified random forest and particle swarm optimi...
PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
PDF
Diabetes mellitus diagnosis method based random forest with bat algorithm
PDF
NewMind AI Weekly Chronicles - August'25-Week II
PPTX
cloud_computing_Infrastucture_as_cloud_p
PPTX
TechTalks-8-2019-Service-Management-ITIL-Refresh-ITIL-4-Framework-Supports-Ou...
PPTX
A Presentation on Artificial Intelligence
PDF
Advanced methodologies resolving dimensionality complications for autism neur...
PPTX
OMC Textile Division Presentation 2021.pptx
PDF
Machine learning based COVID-19 study performance prediction
PDF
Empathic Computing: Creating Shared Understanding
PDF
Univ-Connecticut-ChatGPT-Presentaion.pdf
PDF
Encapsulation_ Review paper, used for researhc scholars
PDF
August Patch Tuesday
PPTX
Programs and apps: productivity, graphics, security and other tools
PDF
Getting Started with Data Integration: FME Form 101
PPTX
Spectroscopy.pptx food analysis technology
PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
Heart disease approach using modified random forest and particle swarm optimi...
Mobile App Security Testing_ A Comprehensive Guide.pdf
Digital-Transformation-Roadmap-for-Companies.pptx
Diabetes mellitus diagnosis method based random forest with bat algorithm
NewMind AI Weekly Chronicles - August'25-Week II
cloud_computing_Infrastucture_as_cloud_p
TechTalks-8-2019-Service-Management-ITIL-Refresh-ITIL-4-Framework-Supports-Ou...
A Presentation on Artificial Intelligence
Advanced methodologies resolving dimensionality complications for autism neur...
OMC Textile Division Presentation 2021.pptx
Machine learning based COVID-19 study performance prediction
Empathic Computing: Creating Shared Understanding
Univ-Connecticut-ChatGPT-Presentaion.pdf
Encapsulation_ Review paper, used for researhc scholars
August Patch Tuesday
Programs and apps: productivity, graphics, security and other tools
Getting Started with Data Integration: FME Form 101
Spectroscopy.pptx food analysis technology
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...

Migrating to Openshift - Reyhan Fabianto