SlideShare a Scribd company logo
1 of 2
Download to read offline
About Us
William E La Forge
A developer for 38 years, a research engineer and an
Open Source Project Manager since 1998. Has worked for
the Open Software Foundation (OSF) Research Institute,
serving on a US Presidential commission, a DARPA
Principal and CTO for JXML inc, a Staff Engineer at Sun
Microsystems and as Director of Engineering at Fiorano.
Current position is CTO of JActor Consulting Pvt.Ltd.
Rupali La Forge
A general manager of Apples n Cherries Preschool for
3 years, a manager in MNC Candy Treat for 2 years
and 18 months as computer instructor at Woman’s
Polytechnic College. Current position is CEO of JActor
Consulting Pvt.Ltd.
Contact Us
William E LaForge, CTO
E-mail: laforge49@gmail.com
Rupali La Forge, CTO
E-mail: jactorconsulting@gmail .com
Mobile: +91 9902622358
Solving a major issue
Vertical scaling is today a major issue when writing
server code. Threads and locks are the traditional
approach to making full utilization of fat (multi-core)
computers, but the result is code that is difficult to
maintain and which to often does not run much faster
than single-threaded code.
Actors make good use of fat computers but tend to be
slow as messages are passed between threads. Attempts
to optimize actor-based programs results in actors
with multiple concerns (loss of modularity) and lots of
spaghetti code.
The approach used by JActor is to minimize the messages
passed between threads by executing the messages sent
to idle actors on the same thread used by the actor which
sent the message. Message buffering is used when
messages must be sent between threads, and two-way
messaging is used for implicit flow control. The result is
an approach that is easy to maintain and which, with a
bit of care to the architecture, provides extremely high
rates of throughput.
JActor
JActor is a high-throughput Java Actor framework, one
of the fastest Actor implementations in any language.
· Two-way messages provide implicit flow
control, for better performance under load.
· A simple machine builder is included to help
keep application code clear and simple.
· A billion actors a second can be created on a
single thread.
· Fast message passing within the JVM.
Benchmark :
Shared
Mailbox
Across
Mailboxes
Asynchronous
Mailboxes
msgs
per sec
222,861,399 151,987,233 81,083,272
License: LGPL
JID
Fast deserialization/reserialization is critical for
databases. The key is to deserialize only what you
need and to keep the serialized data for items that have
not been changed for reserialization after an update.
Applications are built by subclassing existing JID
actors and then composing more complex structures
from them. The JID project includes a number of
actors which support different types of persistent data.
Benchmark :
Entries
Balanced List Jid
(BListJid)
Balanced Map Jid
(BMapJid)
1,000 014 ms .027 ms
10,000 035 ms 056 ms
100,000 .24 ms .48 ms
1,000,000 2.9 ms 6.9 ms
Times given above were for updating a byte array containing
a serialized list or table, i.e. the time to deserialize, insert a
new value (in the case of a list) and reserialize.
License: LGPL
JASocket
A light-weight cluster framework for Mobile Agents,
where the agents are implemented as actors.
License: LGPL
JFile
JFile builds on JActor and Jid, adding file persistence
and an in-memory database which has a throughput
of one million transactions per second when running
on an i7 with SSD.
Benchmark :
An in-memory database that has a throughput of 1
million fully durable transactions per second.
License: LGPL
Test Machine:
i7-3770 @ 3.40 GHz, ASUS P8Z77-M Motherboard,
16 GB Corsair DDR3 1600 MHz RAM and Vertex 3
SATA III SSD
We offer both consulting and
seminars to help you best leverage
our Open Source products, all
of which are freely available for
download from our website.

More Related Content

Similar to JA Brocure v3

Java in the age of containers - JUG Frankfurt/M
Java in the age of containers - JUG Frankfurt/MJava in the age of containers - JUG Frankfurt/M
Java in the age of containers - JUG Frankfurt/MMarkus Eisele
 
Crime File System
Crime File SystemCrime File System
Crime File SystemIJARIIT
 
Java EE 6 Adoption in One of the World’s Largest Online Financial Systems
Java EE 6 Adoption in One of the World’s Largest Online Financial SystemsJava EE 6 Adoption in One of the World’s Largest Online Financial Systems
Java EE 6 Adoption in One of the World’s Largest Online Financial SystemsArshal Ameen
 
Muralikrishna Rathipelli Resume June 23nd Mainframe Developer
Muralikrishna Rathipelli Resume June 23nd Mainframe DeveloperMuralikrishna Rathipelli Resume June 23nd Mainframe Developer
Muralikrishna Rathipelli Resume June 23nd Mainframe DeveloperMuraliKrishna Rathipelli, CSM®
 
NDC London 2014: Erlang Patterns Matching Business Needs
NDC London 2014: Erlang Patterns Matching Business NeedsNDC London 2014: Erlang Patterns Matching Business Needs
NDC London 2014: Erlang Patterns Matching Business NeedsTorben Hoffmann
 
Navodaya R Experience resume
Navodaya R Experience resumeNavodaya R Experience resume
Navodaya R Experience resumeNavodaya R
 
Java EE 6 Adoption in One of the World’s Largest Online Financial Systems [Ja...
Java EE 6 Adoption in One of the World’s Largest Online Financial Systems [Ja...Java EE 6 Adoption in One of the World’s Largest Online Financial Systems [Ja...
Java EE 6 Adoption in One of the World’s Largest Online Financial Systems [Ja...Hirofumi Iwasaki
 
AI and Web-Based Interactive College Enquiry Chatbot
AI and Web-Based Interactive College Enquiry ChatbotAI and Web-Based Interactive College Enquiry Chatbot
AI and Web-Based Interactive College Enquiry ChatbotIRJET Journal
 
CV_Sayani_Updated
CV_Sayani_UpdatedCV_Sayani_Updated
CV_Sayani_UpdatedSAYANI ROY
 
AZConf 2023 - Considerations for LLMOps: Running LLMs in production
AZConf 2023 - Considerations for LLMOps: Running LLMs in productionAZConf 2023 - Considerations for LLMOps: Running LLMs in production
AZConf 2023 - Considerations for LLMOps: Running LLMs in productionSARADINDU SENGUPTA
 
Case Study of Financial Web System Development and Operations with Oracle Web...
Case Study of Financial Web System Development and Operations with Oracle Web...Case Study of Financial Web System Development and Operations with Oracle Web...
Case Study of Financial Web System Development and Operations with Oracle Web...Hirofumi Iwasaki
 
XPDays Ukraine: Legacy
XPDays Ukraine: LegacyXPDays Ukraine: Legacy
XPDays Ukraine: LegacyVictor_Cr
 

Similar to JA Brocure v3 (20)

Java in the age of containers - JUG Frankfurt/M
Java in the age of containers - JUG Frankfurt/MJava in the age of containers - JUG Frankfurt/M
Java in the age of containers - JUG Frankfurt/M
 
Crime File System
Crime File SystemCrime File System
Crime File System
 
Resume_krupa
Resume_krupaResume_krupa
Resume_krupa
 
Muruganandam_7years
Muruganandam_7yearsMuruganandam_7years
Muruganandam_7years
 
Java EE 6 Adoption in One of the World’s Largest Online Financial Systems
Java EE 6 Adoption in One of the World’s Largest Online Financial SystemsJava EE 6 Adoption in One of the World’s Largest Online Financial Systems
Java EE 6 Adoption in One of the World’s Largest Online Financial Systems
 
cv2
cv2cv2
cv2
 
Rajesh Ramasamy
Rajesh RamasamyRajesh Ramasamy
Rajesh Ramasamy
 
Muralikrishna Rathipelli Resume June 23nd Mainframe Developer
Muralikrishna Rathipelli Resume June 23nd Mainframe DeveloperMuralikrishna Rathipelli Resume June 23nd Mainframe Developer
Muralikrishna Rathipelli Resume June 23nd Mainframe Developer
 
Narayana
NarayanaNarayana
Narayana
 
NDC London 2014: Erlang Patterns Matching Business Needs
NDC London 2014: Erlang Patterns Matching Business NeedsNDC London 2014: Erlang Patterns Matching Business Needs
NDC London 2014: Erlang Patterns Matching Business Needs
 
Java-Unit-I.ppt
Java-Unit-I.pptJava-Unit-I.ppt
Java-Unit-I.ppt
 
Techpaper
TechpaperTechpaper
Techpaper
 
Navodaya R Experience resume
Navodaya R Experience resumeNavodaya R Experience resume
Navodaya R Experience resume
 
Java EE 6 Adoption in One of the World’s Largest Online Financial Systems [Ja...
Java EE 6 Adoption in One of the World’s Largest Online Financial Systems [Ja...Java EE 6 Adoption in One of the World’s Largest Online Financial Systems [Ja...
Java EE 6 Adoption in One of the World’s Largest Online Financial Systems [Ja...
 
AI and Web-Based Interactive College Enquiry Chatbot
AI and Web-Based Interactive College Enquiry ChatbotAI and Web-Based Interactive College Enquiry Chatbot
AI and Web-Based Interactive College Enquiry Chatbot
 
CV_Sayani_Updated
CV_Sayani_UpdatedCV_Sayani_Updated
CV_Sayani_Updated
 
mayank_unix_sql_Jboss
mayank_unix_sql_Jbossmayank_unix_sql_Jboss
mayank_unix_sql_Jboss
 
AZConf 2023 - Considerations for LLMOps: Running LLMs in production
AZConf 2023 - Considerations for LLMOps: Running LLMs in productionAZConf 2023 - Considerations for LLMOps: Running LLMs in production
AZConf 2023 - Considerations for LLMOps: Running LLMs in production
 
Case Study of Financial Web System Development and Operations with Oracle Web...
Case Study of Financial Web System Development and Operations with Oracle Web...Case Study of Financial Web System Development and Operations with Oracle Web...
Case Study of Financial Web System Development and Operations with Oracle Web...
 
XPDays Ukraine: Legacy
XPDays Ukraine: LegacyXPDays Ukraine: Legacy
XPDays Ukraine: Legacy
 

JA Brocure v3

  • 1. About Us William E La Forge A developer for 38 years, a research engineer and an Open Source Project Manager since 1998. Has worked for the Open Software Foundation (OSF) Research Institute, serving on a US Presidential commission, a DARPA Principal and CTO for JXML inc, a Staff Engineer at Sun Microsystems and as Director of Engineering at Fiorano. Current position is CTO of JActor Consulting Pvt.Ltd. Rupali La Forge A general manager of Apples n Cherries Preschool for 3 years, a manager in MNC Candy Treat for 2 years and 18 months as computer instructor at Woman’s Polytechnic College. Current position is CEO of JActor Consulting Pvt.Ltd. Contact Us William E LaForge, CTO E-mail: laforge49@gmail.com Rupali La Forge, CTO E-mail: jactorconsulting@gmail .com Mobile: +91 9902622358 Solving a major issue Vertical scaling is today a major issue when writing server code. Threads and locks are the traditional approach to making full utilization of fat (multi-core) computers, but the result is code that is difficult to maintain and which to often does not run much faster than single-threaded code. Actors make good use of fat computers but tend to be slow as messages are passed between threads. Attempts to optimize actor-based programs results in actors with multiple concerns (loss of modularity) and lots of spaghetti code. The approach used by JActor is to minimize the messages passed between threads by executing the messages sent to idle actors on the same thread used by the actor which sent the message. Message buffering is used when messages must be sent between threads, and two-way messaging is used for implicit flow control. The result is an approach that is easy to maintain and which, with a bit of care to the architecture, provides extremely high rates of throughput.
  • 2. JActor JActor is a high-throughput Java Actor framework, one of the fastest Actor implementations in any language. · Two-way messages provide implicit flow control, for better performance under load. · A simple machine builder is included to help keep application code clear and simple. · A billion actors a second can be created on a single thread. · Fast message passing within the JVM. Benchmark : Shared Mailbox Across Mailboxes Asynchronous Mailboxes msgs per sec 222,861,399 151,987,233 81,083,272 License: LGPL JID Fast deserialization/reserialization is critical for databases. The key is to deserialize only what you need and to keep the serialized data for items that have not been changed for reserialization after an update. Applications are built by subclassing existing JID actors and then composing more complex structures from them. The JID project includes a number of actors which support different types of persistent data. Benchmark : Entries Balanced List Jid (BListJid) Balanced Map Jid (BMapJid) 1,000 014 ms .027 ms 10,000 035 ms 056 ms 100,000 .24 ms .48 ms 1,000,000 2.9 ms 6.9 ms Times given above were for updating a byte array containing a serialized list or table, i.e. the time to deserialize, insert a new value (in the case of a list) and reserialize. License: LGPL JASocket A light-weight cluster framework for Mobile Agents, where the agents are implemented as actors. License: LGPL JFile JFile builds on JActor and Jid, adding file persistence and an in-memory database which has a throughput of one million transactions per second when running on an i7 with SSD. Benchmark : An in-memory database that has a throughput of 1 million fully durable transactions per second. License: LGPL Test Machine: i7-3770 @ 3.40 GHz, ASUS P8Z77-M Motherboard, 16 GB Corsair DDR3 1600 MHz RAM and Vertex 3 SATA III SSD We offer both consulting and seminars to help you best leverage our Open Source products, all of which are freely available for download from our website.