Web Connection
Data Serialization performance
Gravatar is a globally recognized avatar based on your email address. Data Serialization performance
  Dimitar
  All
  Sep 8, 2025 @ 01:44am

Hello Rick,

We are still using version 6.x of web connection and we consider moving to v8. One of the reasons is that we've heard data serialization is faster. Do you have rough estimation of how much faster it is within the newest version compared to old versions?

Dimitar Hristov

Gravatar is a globally recognized avatar based on your email address. re: Data Serialization performance
  Rick Strahl
  Dimitar
  Sep 8, 2025 @ 09:11am

Serialization of what to what exactly?

JSON serialization is somewhat improved with several optimizations and support for larger output strings, but the key is not to create massively large exports of data using serialization as VFP's string handling eventually breaks down to become very slow (somewhere around the 16mb boundary even though we can build bigger).

If you create very large 'exports' it's often better to zip up the files (using EncodeDbf perhaps) and unpack on the other end (if both ends are VFP).

Regardless of that, there are lots of improvements and fixes for standards and security etc. that are recommended so an upgrade if you're still on 6.x is probably a good idea regardless.

+++ Rick ---

Gravatar is a globally recognized avatar based on your email address. re: Data Serialization performance
  Dimitar
  Rick Strahl
  Sep 8, 2025 @ 08:09pm

Thanks for the reply, Rick

My point was specificly about serialization of VFP cursors with lets say about 100 columns and between 100-200 rows and submitted as part of larger JSON API response to the client.

Dimitar Hristov

Gravatar is a globally recognized avatar based on your email address. re: Data Serialization performance
  Rick Strahl
  Dimitar
  Sep 9, 2025 @ 12:02pm

100-200 rows should not be very big unless your tables are very wide with many many columns and lots of memo data.

As I said - there have been performance improvements, but it's not going to be a major change - it's not going to be twice as fast.

One big improvement that was made a few months ago was support for greater than 16mb strings and as part of that how string buffers are managed has been improved, which definitely resulted in some perf improvements especially with larger JSON strings.

+++ Rick ---

© 1996-2025