I've been vexed by a number of red herrings that have been presented in
this discussion. Walmart migrated a handful of "customer experience"
interfaces in their e-commerce site from JEE to Node.js, but they haven't
"quit" their use of Java.
Quite to the contrary, front-end Node applications such as "add to cart"
and "checkout" still rely on Java based web services that provide
middle-tier infrastructure, colloquially named "uServices" between Node
and Walmart's back-end database. Here are a couple references:
https://medium.com/walmartlabs/migrating-large-enterprise-to-nodejs-6c38523d2b33
and
https://vimeo.com/180426333
Walmart's Alex Grigoryan expressed that the migration to Node initially led
to performance problems, which they later resolved by adding a caching
layer to their Node framework.
Something like 95+ percent of Walmart's e-commerce site is static content,
served by Akamai and other content networks that use mostly Apache and IIS
for delivery over HTTP.
The formatted streams that are generated by Node and delivered to Walmart's
e-commerce clients are very small when compared to the work that is
occurring in Java middle-tier, IBM i back-end database, and by Walmart's
content delivery providers. Likewise, the functional scope of Walmart's
e-commerce site is small when compared to Walmart's internal applications.
Please see my inline response that follows.
On Tue, Apr 10, 2018 at 10:17 AM, Kelly Cookson <KCookson@xxxxxxxxxxxx>
wrote:
The following are not rhetorical questions. I would genuinely appreciate
hearing from you (on list or off list).
· Is anyone using CGI on IBM i for very high volumes of concurrent
requests similar to, say, Walmart, eBay, PayPal, Amazon Brand Stores, or
Netflix?
I wrote a plug-in for the IBM i HTTP server that enables it to work as a
message broker between HTTP clients and back-end ILE servers. Most of our
IBM i HTTP instances provide a messaging interface in addition to serving
static content. Our messaging interface is similar to Walmart's use of
Kafka, which bridges Node.js clients with middle-tier Java services.
We've logged up to 40 million requests for dynamic content per day in a
production environment on a 4-core IBM i system using this type of
interface. I'm not aware of any interface on any platform that performs
better or scales better than this.
· Has anyone used both CGI and node on the IBM i and can speak
anecdotally to comparisons between the two?
Your question seems like another sidetrack given the context of this and
previous discussions. You've expressed several times that you want a bridge
between dotNet Core and IBM i resources (i.e. database, commands, programs).
What would be better, one short bridge between dotNet core and IBM i
resources? Or should you insert another bridge that includes a hop to
Node.js and some middle-tier applications, and thus increase the distance,
the hops,and the latency between dotNet core and IBM i?
If you'd like to follow Walmart's example, you might propose migrating some
of your .Net applications to Node.js.
As an Amazon Associate we earn from qualifying purchases.