Communications · Libraries · Uncategorized

Roll your own lightweight, scalable backend using ZeroMQ

ZeroMQ is high-speed, distributed messaging library for building scalable communication apps using smart patterns like pub-sub, push-pull, and router-dealer. In this article we will be demonstrating a Delphi version of the ZeroMQ Majordomo Protocol specification which is lightweight distributed communication framework for creating service daemons running on Windows and Linux (with Tokyo 10.2) and client… Continue reading Roll your own lightweight, scalable backend using ZeroMQ

Foundation · Uncategorized

Cross-platform timer queues for Windows and Linux

In this article we will show how to use timer queues to create fast, lightweight, multi-threaded OnTimer() events that work on Windows and Linux in a uniform method using our helper class TgoTimerQueue. We also discuss how they operate on Windows and Linux and show an example application using timer queues. For more information about… Continue reading Cross-platform timer queues for Windows and Linux

Communications · Foundation · Uncategorized

Scalable Linux sockets for the cloud, Part 3

In this article we will show how to use Delphi’s new Linux compiler to expand our HTTP and TCP client base classes to also run on Linux. On Windows we used IOCP to create a highly scalable client, and on Linux we will use EPOLL to also create a scalable client. We will extend the… Continue reading Scalable Linux sockets for the cloud, Part 3

Libraries · Tips & Tricks · Uncategorized

Importing third-party Linux libraries on Delphi 10.2 Tokyo

This primer covers the basics of getting started using third-party libraries with the new Delphi 10.2 and Linux. Introduction If you are planning to use third-party Linux libraries on Delphi for Linux you may encounter some difficulties when you attempt to build and the linker attempts to find those libraries. Some basic Linux assistance with… Continue reading Importing third-party Linux libraries on Delphi 10.2 Tokyo

Communications · Foundation · Uncategorized

Scalable HTTP sockets for the cloud, Part 2

In this article we will expand on our TgoHttpClient class by adding some core new features including non-blocking http responses, unifying HTTP 1.1, HTTP/S and HTTP/2 support into a common class, incremental data transfers, various fixes and performance improvements. In a previous article we discussed the scalable client socket problem and how it creates a… Continue reading Scalable HTTP sockets for the cloud, Part 2

Communications · Foundation · Uncategorized

Receiving push notifications from Apple’s Push Notification and Google’s Firebase Cloud Messaging services

In the previous article we demonstrated how to roll your own Google Firebase Cloud Messaging and Apple APNS push notifications from Delphi apps in a unified manner. This article continues the conversation about how to easily receive and consume them in your Delphi mobile app. Introduction If you are authoring a Delphi service for the… Continue reading Receiving push notifications from Apple’s Push Notification and Google’s Firebase Cloud Messaging services