D
dbeavon
Guest
I like the idea of Docker for PASOE too. (Probably not so much for the database server.) I think I understand the reasoning behind the recommendations for moving to "Named User" licenses in conjunction with Docker. Please correct me if I'm wrong. In the EULA , the "Named User" license is the only one that doesn't have this docker-killing statement "A License may not be transferred from one Server or Platform to another". The problem I see with "Named User" licensing is that it is not a cost-effective way to manage general-purpose back-end services like a database or a generic application server. Progress is taking a licensing model used for front-end applications like MSOFFICE, and AUTOCAD, and trying to apply it to a back-end server platform where it doesn't belong. I don't think many companies will want to use Docker if there is a condition that they have to buy named user licenses for anyone who might ever connect to any ABL-based application code or make an OE database query. The next problem with PASOE on Docker is performance. Whenever I run ABL code with client/server (TCP) connections, I am constantly reminded how slow things are as compared to a direct, "shared-memory" connection to the database. Unless the OE database *and* PASOE are both put in the same docker container, then OE customers won't be able to take advantage of Docker without losing their direct "shared-memory" connections. While there are "check-lists" to make client/server connections work better (primarily by leveraging NO-LOCK loops and removing nested loops), it only goes so far. This type of remote database connectivity is not a place where OE ABL has excelled. Its interesting to read some of the KBs (eg. Progress KB - How to improve Client Server Performance) which contain the client/server performance "check-lists". In that article - all about improving the performance of client/server database connections - there is a section at the end with the title "THE APPSERVER ADVANTAGE". It seems to say that your best bet for performance is to avoid client/server database connections after all, and to connect to an appserver instead (presumably one that shares memory with the database directly). The section at the end seems to undermine the purpose of the article and tells the user something that they are already painfully aware of. Aside from the licensing issues and the client/server performance issues, I am pretty eager to be able to use Docker for PASOE deployments. Docker would greatly improve the story of being able to "continuously deliver" ABL applications into production. We use a ton of home-grown solutions for that type of thing, as most Progress customers probably do.
Continue reading...
Continue reading...