Home
%3CLINGO-SUB%20id%3D%22lingo-sub-1225326%22%20slang%3D%22en-US%22%3ELesson%20Learned%20%23123%3A%20Testing%20PrivateLink%20connection%20time%20using%20Azure%20Database%20for%20MySQL%20and%20PHP%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-1225326%22%20slang%3D%22en-US%22%3E%3CP%3ESome%20time%20ago%2C%20I%20wrote%20an%20%3CA%20href%3D%22https%3A%2F%2Ftechcommunity.microsoft.com%2Ft5%2Fazure-database-support-blog%2Flesson-learned-117-testing-the-connection-time-using-azure%2Fba-p%2F1083187%22%20target%3D%22_self%22%3Earticle%3C%2FA%3E%20about%20how%20to%20improve%20the%20connection%20speed%20in%20Azure%20Database%20using%20the%20best%20practices.%26nbsp%3B%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%3EWe%20received%20in%20the%20latest%20days%20many%20questions%20about%20the%20%3CA%20href%3D%22https%3A%2F%2Fdocs.microsoft.com%2Fen-us%2Fazure%2Fmysql%2Fconcepts-data-access-security-private-link%22%20target%3D%22_self%22%20rel%3D%22noopener%20noreferrer%20noopener%20noreferrer%20noopener%20noreferrer%22%3Eprivatelink%3C%2FA%3E%20and%20following%2C%20I%20would%20like%20to%20share%20with%20you%20the%20results%20of%20this%20connection%20speed%20test.%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%3EAfter%20my%20test%20the%20connection%20time%20for%20every%20connection%20was%20very%20similar%20when%20we%20have%20the%20following%20configuration%3A%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3CUL%3E%0A%3CLI%3EAll%20test%20have%20been%20done%20in%20NorthEurope.%3C%2FLI%3E%0A%3CLI%3EI%20installed%3CSPAN%3E%26nbsp%3B%3C%2FSPAN%3E%3CSTRONG%3EPHP%20version%20-%20php-7.3.13-Win32-VC15-x64%3C%2FSTRONG%3E%3C%2FLI%3E%0A%3CLI%3EI%20created%20a%20virtual%20machine%20and%20installed%20a%20MySQL%20server%20v.8.0.18%2C%20with%20a%20model%20that%20allows%20me%20to%20select%20Accelerated%20networking.%3C%2FLI%3E%0A%3CUL%3E%0A%3CLI%3E%3CSTRONG%3EComputer%3CSPAN%3E%26nbsp%3B%3C%2FSPAN%3E%3C%2FSTRONG%3E%3CSTRONG%3ESize%3C%2FSTRONG%3E%3A%20Standard%20D4s%20v3%20(4%20vcpus%2C%2016%20GiB%20memory)%26nbsp%3Band%3CSPAN%3E%26nbsp%3B%3C%2FSPAN%3E%3CSTRONG%3Eaccelerated%20networking%20enabled%3C%2FSTRONG%3E%3C%2FLI%3E%0A%3C%2FUL%3E%0A%3CLI%3E%3CSTRONG%3EI%20created%20an%20Azure%20Database%20for%20MySQL%3C%2FSTRONG%3E%3A%3CUL%3E%0A%3CLI%3EMySQL%3CSPAN%3E%26nbsp%3B%3C%2FSPAN%3E%3CSTRONG%3EVersion%3C%2FSTRONG%3E%3A%205.6%2C%20Memory%20Optimized%2C%208%20vCore(s)%2C%201018%20GB%3C%2FLI%3E%0A%3CLI%3E%3CSTRONG%3ESSL%20Enforce%20status%3A%3C%2FSTRONG%3E%3CSPAN%3E%26nbsp%3B%3C%2FSPAN%3EDISABLED%3C%2FLI%3E%0A%3CLI%3EInitial%20configuration%20without%20any%20parameter%20modification.%3C%2FLI%3E%0A%3C%2FUL%3E%0A%3C%2FLI%3E%0A%3C%2FUL%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%3EThe%20most%20important%20thing%20using%20privatelink%20feature%20is%20that%20the%20connection%20will%20not%20go%20through%20Internet%2FAzure%20Backbone%2C%20it%20will%20use%20the%20VNET%20connection.%26nbsp%3B%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%3EFor%20example%2C%20once%20I've%20created%20a%20privatelink%20the%20client%20computer%20will%20obtain%20an%20internal%20IP%20of%20this%20VNET%2FSubnet%20not%20the%20public%20one.%20Please%2C%20pay%20attention%20if%20your%20client%20computer%20is%20not%20in%20this%20VNET%2FSubnet%20the%20IP%20that%20you%20are%20going%20to%20have%20will%20be%20the%20normal%20one%20even%20if%20you%20specified%20the%20privatelink%20FQDN%2C%20for%20example%2C%20servername.privatelink.mysql.%3CSPAN%3Edatabase.azure.com.%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%3E%3CSPAN%3EEnjoy!%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-TEASER%20id%3D%22lingo-teaser-1225326%22%20slang%3D%22en-US%22%3E%3CP%3ESome%20time%20ago%2C%20I%20wrote%20an%20%3CA%20href%3D%22https%3A%2F%2Ftechcommunity.microsoft.com%2Ft5%2Fazure-database-support-blog%2Flesson-learned-117-testing-the-connection-time-using-azure%2Fba-p%2F1083187%22%20target%3D%22_self%22%3Earticle%3C%2FA%3E%20about%20how%20to%20improve%20the%20connection%20speed%20in%20Azure%20Database%20using%20the%20best%20practices.%26nbsp%3B%3C%2FP%3E%0A%3CP%3EWe%20received%20in%20the%20latest%20days%20many%20questions%20about%20the%20%3CA%20href%3D%22https%3A%2F%2Fdocs.microsoft.com%2Fen-us%2Fazure%2Fmysql%2Fconcepts-data-access-security-private-link%22%20target%3D%22_self%22%20rel%3D%22noopener%20noreferrer%20noopener%20noreferrer%20noopener%20noreferrer%22%3Eprivatelink%3C%2FA%3E%20and%20following%2C%20I%20would%20like%20to%20share%20with%20you%20the%20results%20of%20this%20connection%20speed%20test.%3C%2FP%3E%3C%2FLINGO-TEASER%3E%3CLINGO-SUB%20id%3D%22lingo-sub-1226526%22%20slang%3D%22en-US%22%3ERe%3A%20Lesson%20Learned%20%23123%3A%20Testing%20PrivateLink%20connection%20time%20using%20Azure%20Database%20for%20MySQL%20and%20PHP%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-1226526%22%20slang%3D%22en-US%22%3E%3CP%3EHi%20Jose%2C%20thanks%20for%20this%20interesting%20information!%20One%20question%2C%20how%20much%20difference%20is%20there%20when%20accelerated%20networking%20is%20disabled%3F%20Regards%2C%20Johannes%20Vink%3C%2FP%3E%3C%2FLINGO-BODY%3E

Some time ago, I wrote an article about how to improve the connection speed in Azure Database using the best practices. 

 

We received in the latest days many questions about the privatelink and following, I would like to share with you the results of this connection speed test.

 

After my test the connection time for every connection was very similar when we have the following configuration:

 

  • All test have been done in NorthEurope.
  • I installed PHP version - php-7.3.13-Win32-VC15-x64
  • I created a virtual machine and installed a MySQL server v.8.0.18, with a model that allows me to select Accelerated networking.
    • Computer Size: Standard D4s v3 (4 vcpus, 16 GiB memory) and accelerated networking enabled
  • I created an Azure Database for MySQL:
    • MySQL Version: 5.6, Memory Optimized, 8 vCore(s), 1018 GB
    • SSL Enforce status: DISABLED
    • Initial configuration without any parameter modification.

 

The most important thing using privatelink feature is that the connection will not go through Internet/Azure Backbone, it will use the VNET connection. 

 

For example, once I've created a privatelink the client computer will obtain an internal IP of this VNET/Subnet not the public one. Please, pay attention if your client computer is not in this VNET/Subnet the IP that you are going to have will be the normal one even if you specified the privatelink FQDN, for example, servername.privatelink.mysql.database.azure.com.

 

Enjoy!

 

 

1 Comment
Regular Visitor

Hi Jose, thanks for this interesting information! One question, how much difference is there when accelerated networking is disabled? Regards, Johannes Vink