CALL WORKER and CALL FORM have inspired me to move from V13 to V16. I've done a lot with queues and messaging down the years and so far really like what I see about what V16 has to offer.
But I'm curious - what are other people using inter-process communications for now? I'm more interested in the problems your solving than the communications architecture, but any answer is fine. I've used message queues and IP communications largely for: * Moving tasks to underused machines. * Running maintenance tasks (integrity checks, etc.) without bothering users. * Providing access to a resource tied to one machine. (External software with one license, machine with special network access rights, machine connected to a specific serial device, etc.) * Kind of a case of the previous, but consolidating access to a high-contention resource. For example, a log file. You don't want lots of processes fighting to get a write lock on a log file. No. Instead, you keep it open in one process and send that process messages. The process then pushes the message out to the log. Zillions of times faster, way easier. That's what Web servers do. Pretty much server and background task oriented, not so much UI-oriented. Because CALL PROCESS/Outside call don't work. Because I like server-oriented code. Anyway, that's the past. What do other people use inter-process communications for? Okay, can't help myself, here are the main approaches I've seen pre-V16 to implement such things: * IP vars/arrays/semaphores (or not) to create a shared-access queue. * Records to push tasks around. (Something I've done a lot of.) * IPC channels with NTK. * Custom TCP messaging coding using ITK/NTK/4DIC. * Messaging over HTTP, be that REST/JSON/SOAP/custom. * Messaging over the network using some kind of external HTTP-based server or Amazon service. There are other options in the wider world, but I haven't run into them being used in a 4D project in the wild. Thoughts and examples very welcome. ********************************************************************** 4D Internet Users Group (4D iNUG) FAQ: http://lists.4d.com/faqnug.html Archive: http://lists.4d.com/archives.html Options: http://lists.4d.com/mailman/options/4d_tech Unsub: mailto:[email protected] **********************************************************************

