× The internal search function is temporarily non-functional. The current search engine is no longer viable and we are researching alternatives.
As a stop gap measure, we are using Google's custom search engine service.
If you know of an easy to use, open source, search engine ... please contact support@midrange.com.



And here we have to think a little different.

Why not set up a NGiNX environment in the cloud. The HTTP server
can then serve all static files from the cloud thus reducing bandwidth
and processing requirements to/on our local servers since they only have
to handle requests that needs our IBM I environment.

The setup could be as simple as this ...

http {
upstream myapp1 {
server srv1.example.com;
server srv2.example.com;
server srv3.example.com;
}

server {
listen 80;

location / {
proxy_pass http://myapp1;
}
}
}


On Wed, Oct 14, 2015 at 11:38 AM, Henrik Rützou <hr@xxxxxxxxxxxx> wrote:

Gents

just because you want to run node.js apache don't disappear.

Most of us would probably want to have a mixed environment and no one
says that you can't run node.js as a proxy under apache - very similar to
routing CGI requests.

If you want to load balance your environment you can also put a NGiNX
(engine-x) HTTP server in front of both your apache and your node.js
servers.NGiNX is designed to be able to handle C10K+ concurrent requests

This means that you are able to run concurrent node.js servers on IBM I
very similar to apache's QZSRCGI stack.

Remember that node.js is single treaded and will only use one core at
the time on any hw-platform.

Unfortunately NGiNX hasn't been ported to IBM I yet so you either has
to run it in a Linux/AIX LPAR or on another machine.

On Wed, Oct 14, 2015 at 8:57 AM, Kevin Turner <
kevin.turner@xxxxxxxxxxxxxxx> wrote:

"Routing steps" is probably acceptable terminology, although I think they
are referred to as just "routes". We have to careful not to confuse routes
within an app with the higher level route to the app in the first place.
The latter is the top level URL:port on which the app is listening and the
former is the internal routing to controllers handling the Ui for the app.
I am sure Kelly is talking about the top level routing to the app and how
to handle that as opposed to the question of internal routing to "screens"
within the app.

Sent from my iPad

On 14 Oct 2015, at 05:03, Nathan Andelin <nandelin@xxxxxxxxx> wrote:


We are talking stateless here so you will never have 20.000 routing
steps
to handle at the same time unless you have millions of users..


Henrik,

Maybe "routing steps" is not the right term.

All HTTP requests need to be routed to specific JavaScript functions in
Node.js.

The idea is to use URLs to "route" requests appropriately. Say a URL
pattern such as the following is used to route HTTP requests:

/major-system/module/application/requested-action

Even a moderately scope system could very well exceed 20,000 unique URLs
for more than 20,000 possible JavaScript functions (request handlers).

So maybe routing is handled with a a series of nested conditions:

When URL-major-system = "human_resources" ...
When URL-module = "payroll" ...
When URL-application = "maintain_employee_payroll_deductions" ...
When URL-requested-action = "list_employees" ...

Since you mentioned having a "stateless" environment, that raises the
likelihood of managing state for each user, and possibly for each
application identified in a URL. Wouldn't some part of the URL be used
as a
key for saving and restoring user state?
--
This is the Web Enabling the IBM i (AS/400 and iSeries) (WEB400)
mailing list
To post a message email: WEB400@xxxxxxxxxxxx
To subscribe, unsubscribe, or change list options,
visit: http://lists.midrange.com/mailman/listinfo/web400
or email: WEB400-request@xxxxxxxxxxxx
Before posting, please take a moment to review the archives
at http://archive.midrange.com/web400.


___________________________________________
This email has been scanned by iomartcloud.
http://www.iomartcloud.com/


________________________________

NOTICE: The information in this electronic mail transmission is intended
by CoralTree Systems Ltd for the use of the named individuals or entity to
which it is directed and may contain information that is privileged or
otherwise confidential. If you have received this electronic mail
transmission in error, please delete it from your system without copying or
forwarding it, and notify the sender of the error by reply email or by
telephone, so that the sender's address records can be corrected.




--------------------------------------------------------------------------------


CoralTree Systems Limited
25 Barnes Wallis Road
Segensworth East, Fareham
PO15 5TT

Company Registration Number 5021022.
Registered Office:
12-14 Carlton Place
Southampton, UK
SO15 2EA
VAT Registration Number 834 1020 74.
--
This is the Web Enabling the IBM i (AS/400 and iSeries) (WEB400) mailing
list
To post a message email: WEB400@xxxxxxxxxxxx
To subscribe, unsubscribe, or change list options,
visit: http://lists.midrange.com/mailman/listinfo/web400
or email: WEB400-request@xxxxxxxxxxxx
Before posting, please take a moment to review the archives
at http://archive.midrange.com/web400.




--
Regards,
Henrik Rützou

http://powerEXT.com <http://powerext.com/>






As an Amazon Associate we earn from qualifying purchases.

This thread ...

Follow-Ups:
Replies:

Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].

Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.