home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #19 / NN_1992_19.iso / spool / comp / database / 6505 < prev    next >
Encoding:
Internet Message Format  |  1992-09-02  |  5.1 KB

  1. Path: sparky!uunet!ogicse!hp-cv!sdd.hp.com!scd.hp.com!cupnews0.cup.hp.com!dhepner
  2. From: dhepner@cup.hp.com (Dan Hepner)
  3. Newsgroups: comp.databases
  4. Subject: Re: TP monitors for SunOs, 3278 drivers.
  5. Message-ID: <BtyptM.GMD@cup.hp.com>
  6. Date: 2 Sep 92 17:56:09 GMT
  7. Article-I.D.: cup.BtyptM.GMD
  8. References: <25442@castle.ed.ac.uk>
  9. Sender: news@cupnews0.cup.hp.com
  10. Organization: Hewlett-Packard
  11. Lines: 91
  12. X-Newsreader: Tin 1.1scd1 PL4
  13.  
  14. >To handle this large number of users two things are critical: to minimise
  15. >the cost of context switches between users, and to minimise the amount a state
  16. >that needs to be held per user in fast memory.
  17.  
  18. Ok, but we need to back up one step.  This machine is capable only
  19. of running a single batch job at a time, and we want to do online work.  
  20. Making a single batch job service lots of online users was the primary 
  21. accomplishment of the original mainframe TP monitors.  Efficiency
  22. came as an optimization, reduced memory consumption reflects the
  23. reality of 25 year old memory systems.
  24.  
  25. OLTP on Unix "came with" this fundamental problem already solved.  One
  26. or more Unix processes per user works quite well as a means to provide
  27. online access. 
  28.  
  29. TP monitors (EG CICS) achieve
  30. >this by being much less extravagent with their use of heavy processes than Unix
  31. >applications would typically be.  Instead, they have a few (?) great big
  32. >processes which work on behalf of a large number of users, holding for each
  33. >user the bare minmal amount of state information required.
  34.  
  35. This problem is overblown somewhat, as applies to most Unix kernels suitable
  36. to be run on "multi-user" hardware.  Running hundreds of processes seldom
  37. creates much OS inefficiency, and with main memory sizes exceeding 1GB, 
  38. keeping significant amounts of state is similarly less of a problem than
  39. when 1MB of main memory was a lot.  We do however start to see inefficiency,
  40. both in the OS and with DBMS software when we start to run thousands of
  41. processes.  
  42.  
  43. So we see that the problem, whatever it might be, to be addressed by a 
  44. Unix TP monitor is not the same as that which faced the designers
  45. of mainframe TP monitors 25 years ago.  While it is desirable to reduce
  46. the number of "heavyweight OLTP processes" to well below 1 per online user, 
  47. there is little point in shooting to achieve, say, 3; 50 would likely 
  48. work as well or better.  Client/server designs address this desire quite 
  49. nicely.
  50.  
  51. However, we do not need a TP monitor to do client/server.  Sockets based
  52. C/S has been doable for more than a decade, and DCE now provides a broad
  53. set of nice standards for doing C/S.  Situations when the client sends a 
  54. message to a server, and the server completes the transaction are
  55. well supported using conventional communications.
  56.  
  57. But what if the transaction needs to access more than one service, 
  58. particularly when the services access different databases?  This is
  59. the essence of the problem which Unix TP monitor products solve.
  60. They provide transactional communications, the ability to "flow"
  61. the transaction from the client process to the server process;
  62. whatever is done in the server will need to be atomically committed
  63. with work done by the client as well as that done by other servers.
  64. We need two phase commit coordination, and we need the buy in of the
  65. database products, allowing themselves to be coordinated to achieve
  66. a global atomic commit.  The DBMS product buy in has come as 
  67. "XA compliance", and is now nearly universal.
  68.  
  69. All (3 or 4) of the Unix TP monitors can do that; some use TCP 
  70. as their basic communications, some use DCE RPC.  But they all provide 
  71. the ability to have work done in multiple processes be coordinated as
  72. a single atomic transaction.  Well underway with all are ways of expanding
  73. the transactional communications to include activity done on mainframes.
  74.  
  75. Then the different products go their own way, especially in answering
  76. the question "what does a Unix TP monitor monitor?"
  77.  
  78. >However, it does you much less good 
  79. >if your front-end is an enormous network of dumb terminals, or even semi-dumb
  80. >terminals like IBM 3278s.
  81.  
  82. One might expect this concern to be answered with, "you really _like_
  83. those dumb terminals?"  Some would imagine them as the first to 
  84. go in any "downsizing operation"; it's fairly straightforward in many
  85. systems to install a user-friendly, Unix based, graphical front end 
  86. which then submits ugly transactions to an unchanged back end mainframe.
  87.  
  88. >What you want then is CICS, under Unix. Not a CICS migration tool, 
  89. >or a compatability interface, but something which lets you
  90. >service a sensible number (500 ?) of OLTP users on a small machine like a 
  91. >SPARCstation 10 (?).
  92.  
  93. Leaving SPARC out of it, if this is really what you want, it may be 
  94. worth checking out CICS-AIX, from IBM, on an RS/6000. If anyone can 
  95. supply CICS on Unix, it's likely to be IBM.  
  96.  
  97. One might observe however that if the problem which one is setting 
  98. out to solve is running 500 happy online users, that the cost differences
  99. between "small Unix machines" and "large Unix machines" as the backend
  100. hardware is not likely to show up as the dominating factor in determining
  101. which to buy.  
  102.  
  103. Dan Hepner
  104. Not a statement of the Hewlett Packard Company.
  105.