What kind of performance can I expect with DreamFactory?


#1

DreamFactory provides a highly efficient direct connection to a dedicated MySQL database or any other data source you add, like your own SQL, NoSQL, file storage, or other REST APIs that your app needs.

This type of architecture delivers excellent performance; most document exchanges take about 1/4 second. All requests and responses are automatically compressed with content encoding, which results in about 95% less network traffic. The BLOB storage interface has access to the server hard disk, or proxy access to S3 and Azure. Your speed will also vary depending on your cloud server and network characteristics.


#2

I have a local Bitnami Dreamfactory installation connected to a local network ms sql server. But my responses are about 2 seconds instead of the claimed 0.25 seconds. Any tips on improving performance?


#3

Mark,

First off, glad that you’re able to create a connection to SQL Server - please let me know what environment looks like.

Which OS are you running?
Which OS is the SQL Server running on?
Are you using the dblib driver or the sqlsrv driver?

If you would please append the following to “localhost”:

/rest/system/config?app_name=launchpad

making it look like

localhost/rest/system/config?app_name=launchpad

This will give you the configuration of your DSP. Please send this response data to us at support@dreamfactory.com and we will be able to hopefully tweak the system to get proper results.

Thanks,

  • Mark

#4

Bitnami Dreamfactory installed on local desktop Windows 7 64 bit.
SQL Server 2008R2 (Not sure it’s OS)
Using sqlsrv driver and the Microsoft PHP SQL Drivers 5.4

DSP Configuration :
{“id”:1,“created_date”:null,“created_by_id”:null,“last_modified_date”:“2014-07-18 10:33:29”,“last_modified_by_id”:1,“db_version”:“1.5.0”,“allow_open_registration”:false,“open_reg_role_id”:null,“open_reg_email_service_id”:null,“open_reg_email_template_id”:null,“invite_email_service_id”:null,“invite_email_template_id”:null,“password_email_service_id”:null,“password_email_template_id”:null,“allow_guest_user”:true,“guest_role_id”:1,“editable_profile_fields”:“email,display_name,first_name,last_name,phone,default_app_id,security_question,security_answer”,“custom_settings”:[],“allow_admin_remote_logins”:false,“allow_remote_logins”:false,“remote_login_providers”:null,“is_hosted”:false,“is_private”:false,“dsp_version”:“1.6.10”,“server_os”:“windows nt”,“latest_version”:“1.6.10”,“upgrade_available”:false,“allowed_hosts”:[],“lookup_keys”:[],“is_guest”:true}


#5

Thank you.

Please provide me with your connection string


#6

sqlsrv:Server=myserver.mycompany.int\instance;Database=mydatabase


#7

You’re running on the 2008R2 Instance, so it may speed up the connection if you have the native client installed, as well. This is sometimes not packaged in older version of SQL Server. However, since you’ve already made a successful connection - this may not affect response.

I have a local version installed (windows 8.1, response time here is a 1/4 per second) and can test a 2008 R2 instance for you (remotely) that I have access to.

Thanks,

  • Mark

#8

Mark,

I have tested 3 different scenarios:

note that these are all the top-level GET request. getResources()

1) Connecting from my local machine (running my Bitnami DSP) to my local 2012 SQL Server Instance: Result: 417ms, 399ms, 403ms

  1. Connecting from my local machine (running my Bitnami DSP) to our 2008R2 SQL Server instance on local intranet.

This is the scenario in which you’re referring:
Result: 433 ms, 458ms, 454ms, 396ms, 438ms

  1. Connecting from my hosted edition to our 2008R2 SQL Server instance.
    Result: avg < 1 sec - keep in mind that neither of these are local.

Hope that this helps. I am not sure why you’re getting such a slow response time. It could have to do with you hitting the external IP of your SQL server rather than internally as I did. But, even when I hit the external (just tested that) I get same response time.

It looks like it’s some sort of network issue on your side. Have you tried connecting via the hosted version for performance difference…?

Thanks,

  • Mark