Jump to content
View in the app

A better way to browse. Learn more.

FMForums.com

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Database can't handle online user load

Featured Replies

I've got an online application that queries two different FM7 databases, inputting the data to one of them. (Using FXPHP and FM7 Server Advanced on a Mac). The application deadline is today and last night there were over 100 users of the system. The web pages stopped functioning correctly - incredibly slow, error messages because the queries to one of the databases were failing. Database 1, the smaller, less complicated database that stored the data, worked fine. Database 2, a large, complicated database, couldn't respond to all the queries. Database 2 was also being queried by another set of web pages for a different purpose, also heavily used last night.

Question - How many online users should an FM7 database be able to handle at once? What can I do to improve the performance of that database (other than decreasing the number of queries and having specified layouts for each query).

Thanks!

Having specific layouts for use with FX PHP can greatly increase the speed of a system.

Make sure that the layouts only contain the fields, value lists etc. that are required for FX PHP.

  • Author

I have done that. Do you know of any other common mistakes or issues that could limit the performance of a database when interacting with web pages?

AFAIK the limit is 100 web clients.

Maybe you can upgrade to Server 9 where the machine deployment can be spread over multiple machines, including a dedicated web server.

Is your hardware upto it? You're going to need something beefy to push all this.

What exactly do you mean by this:

Maybe you can upgrade to Server 9 where the machine deployment can be spread over multiple machines, including a dedicated web server.

Are you just suggesting an FMS, Web Server split, or are you inferring a multi FMS deployment is possible?

Running a 120 mb file, with over 44000 records, we were starting to slow down really bad, even to view a single record with maybe 30 fields, some relational and a couple calcs, we were getting various errors (timeout, xml, xsl ) throughout the site. We were maxing out at two web users to avoid the errors.

After various days of tweaking, layouts, calc, and php. Testing on different servers. etc. It dawned on us, maybe the file is corrupt.

We first ran the file through the file recover process and then ran optimize/compress under the file maintenance in FMP Advanced. Figuring that we should use all the tools FMP has.

The file is now 85 mb, and our single record page load time has reduced from 8-10 sec, down to 2-3sec.

  • Author

Thanks, I'm going to try this.

  • Author

Eventually, we'll be able to upgrade - but for now I've got to work with what we have. Does FM9 allow more than 100 web clients, or is that just possible because you split it over multiple machines?

Rivet wrote: "We first ran the file through the file recover process and then ran optimize/compress under the file maintenance in FMP Advanced."

The Recover process should be used only as a LAST RESORT and a recovered file should NOT be put back into production. Revover is used only to recover *data* from a file, to import it into a known-good backup of the original file.

The correct process is to first save a compressed copy of the file. Expert opinion is currently NOT to use the file maintenance options because these could make a corrupted file worse, not better.

If the compressed copy is still corrupt, then recover the data and import into a known-good backup.

Create an account or sign in to comment

Important Information

By using this site, you agree to our Terms of Use.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.