bobD 6 Posted November 26, 2020 Context latest Delphi 10.4.1, Arch and Interbase 2020. Windows 10. FireDac. Local home network, both cat-6 wired (desktops) and wifi (laptops) The laptops are much slower on connecting--enough to be annoying--so I'm thinking about using primarily either ToGo or a local IB server. The data has a high-use but low volatility, so coordinating between the local and main servers will be relatively trivial. Is there a good sample app for setting up an embedded or local IB delphi app? I assume I have to include different files. The one briefcase model I found used a server and local flat files. Thanks for any help or links. bobD Share this post Link to post
Guest Posted November 27, 2020 (edited) First, I would try alternatives to regularize the performance of your network, which, I think is for internal use, and, perhaps with external connectivity to the internet. Well, in this case, a good option would be to reevaluate your network server, I think it is badly configured, and, at worst, congested. If congested, a new hardware upgrade plan may be needed! There is also, on the notebook side (clients), the possibility of having a network card in the "Megabits" standard, and today everything revolves around "Gigabits", even if using Wifi instead of standard cabling. In this case, it would be necessary to exchange the network cards for more updated cards, if this is the current design. To remedy, or at least, remove any doubts about the performance of the local network among notebooks (clients), removing them from the main network, to test performance. Now, if the clients' performance proves to be adequate when exchanging data (files, etc ...), then it is confirmed that the bottleneck is in your server, where they are currently connected. One of the causes of its loss of performance, may be precisely, the access to the internet by the data server, since it will always be consulting it at all times, and Interbase may be doing the same thing. Thus, this can influence the demand for data services. Clearly, you need to divide the jobs: have a server with internet access (which can be released to all computers and devices of interest) have a server with access to the Database Interbase (out of reach of the internet). This way, you would have a local subnet, for the Database, and a general network for external access (internet) for example. Some like this: with 2 hubs (basic) and 1 switcher, you will have this design in action! Hub 1 = 192.168.1.x Hub 1 = 192.168.2.x Switcher (192.168.3.x) "join" Hub 1 + Hub 2 address ===> on Switcher, you can create "Virtual Nets" and give access to your servers (Database and Internet) Good site for study about networks: https://sourcedaddy.com/networking/extending-the-network-with-multiple-hubs.html To join the two subnets, you could use a "switcher" (preferably, as it is specific to this) or a "hub" with the option to concatenate the two networks. Regarding your application with access to Interbase, please be aware that the RAD Studio Enterprise / Architect edition provides a limited license for use in "development", for use in "production" it is necessary that each customer has their license installed. For more details, see the Embarcadero website on this subject. The license for IBtoLite / IBtoGo is for exclusive access to a Database, not for multi-users! https://www.embarcadero.com/interbase-licensing-options Developer Edition Licensing InterBase Developer Edition allows software developers to freely develop InterBase applications before they deploy them. All the functionality of InterBase Server Edition is included with Developer Edition. Additional InterBase Licensing Information You must purchase a Desktop license for each Desktop edition you plan to deploy. You must purchase a ToGo license for each ToGo edition you plan to deploy. An InterBase Server License activates the InterBase Server software and a license for 1 User connection or for the number of users based on the volume license purchased. InterBase Server Edition licenses include support for up to 8 CPU cores. To add support for more than 8 cores on a single machine, additional licenses are required. To purchase additional simultaneous user licenses to an existing InterBase Server installation, additional Simultaneous User Licenses can be purchased in the same quantities listed above to allow additional users to connect. Each Simultaneous User License consists of a license certificate with a serial number. Entering and registering the serial number using the InterBase License Manager will add additional simultaneous user connections to the InterBase Server. In your RAD install, you have in (Samples folders) ...\Object Pascal\Database = FireDAC and Interbase Demo for tests! Edited November 27, 2020 by Guest Share this post Link to post
bobD 6 Posted November 27, 2020 16 hours ago, emailx45 said: First, I would try alternatives to regularize the performance of your network, https://www.embarcadero.com/interbase-licensing-options In your RAD install, you have in (Samples folders) ...\Object Pascal\Database = FireDAC and Interbase Demo for tests! Don't know if I provided too much context or not enough. I've got a pretty good idea what's slowing down the wifi, but not really interested in that, because (1) the unit router actually belongs to the apartment building. It's single band 2.4, but more than adequate for most purposes, and more importantly (2) this is mostly just an excuse to learn more about IB and FireDAC. I worked professionally against SQLServer for well over a decade, mostly dbGo, but also ODBC and (many years ago} BDE. But I never had the occasion to write a briefcase app: all strictly C/S. Since I'm retired now I have time to learn IB and FireDAC. What I didn't see in the Rad Studio samples is a pair of clear examples of the difference between setting up a Delphi FireDAC app to run IB embedded vs IB desktop. Is that a matter of FireDAC connection settings? Specific files in the connection datamodule uses clause? Some specific FD physical layer support component? I can easily set up a local IB connection, but since my dev machines have a local IB server running, I can't say for sure I know whether it's embedded vs desktop. I want to get the connection options completely sussed before moving into all the other new (to me) IB/FD goodies bobD Share this post Link to post
Guest Posted November 27, 2020 if you world is C, then CBuilder! Object Pascal (Delphi) would be very easy for your xperience! Share this post Link to post