Log On
Embarcadero Home
Watch, Follow, &
Connect with Us
Share This
QualityCentral
Communities
Articles
Blogs
Resources
Downloads
Help
QualityCentral
Delphi for PHP
AddOn
Compatibility
Database
Debugger
Demos
Documentation
IDE
Install
Internet
Library
Other
PEAR
PHP
Suggestion
You are not logged in.
Help
Print
Public Report
Report From:
Delphi for PHP/Library
[ Add a report in this area ]
Report #:
104912
Status:
Open
rpcl works really slowly and don't use Zend style architecture
Project:
HTML5 Builder
Build #:
4.4.0.1656
Version:
4.4
Submitted By:
Alexey Kodubets
Report Type:
Basic functionality failure
Date Reported:
4/15/2012 2:05:35 AM
Severity:
Serious / Highly visible problem
Last Updated:
7/6/2012 1:38:23 AM
Platform:
All versions
Internal Tracking #:
3816
Resolution:
None
(Resolution Comments)
Resolved in Build:
:
None
Duplicate of:
None
Voting and Rating
Overall Rating:
(1 Total Rating)
5.00 out of 5
Total Votes:
10
Description
Pre-requires: firefox + firebug installed for profiling
1) Launch RadPHP;
2) Add clean unit.php (without rpcl);
3) press F9;
4) firefox is launched and press F5 to calculate average time of loading:
In my case it is 40-50 ms - it is ok;
1) add rpcl module to the project + save to file unit1.php;
2) press F9;
3) firefox is launched and press F5 to calculate average time of loading;
Actual result:
250-270 ms;
Expected result:
40-50 ms + X where X is very small (not 200-210 ms).
If I comment out the most of code, it take 180-200 ms:
----
<?php
require_once("rpcl/rpcl.inc.php");
//Includes
use_unit("forms.inc.php");
//use_unit("extctrls.inc.php");
//use_unit("stdctrls.inc.php");
/*
//Class definition
class DataModule1 extends DataModule
{
}
global $application;
global $DataModule1;
//Creates the form
$DataModule1=new DataModule1($application);
//Read from resource file
$DataModule1->loadResource(__FILE__);
*/
?>
---
If I comment out "//use_unit("forms.inc.php");", it takes 50-70 ms.
Thus, "use_unit("forms.inc.php");" is written incorrectly (in VCL style) it doesn't use Zend Style architecture when require_once is called only when it is required inside of function which speeds up the whole script. I suggest to fix it.
Steps to Reproduce:
Pre-requires: firefox + firebug installed for profiling
1) Launch RadPHP;
2) Add clean unit.php (without rpcl);
3) press F9;
4) firefox is launched and press F5 to calculate average time of loading:
In my case it is 40-50 ms - it is ok;
1) add rpcl module to the project + save to file unit1.php;
2) press F9;
3) firefox is launched and press F5 to calculate average time of loading;
Actual result:
250-270 ms;
Expected result:
40-50 ms + X where X is very small (not 200-210 ms).
If I comment out the most of code, it take 180-200 ms:
----
<?php
require_once("rpcl/rpcl.inc.php");
//Includes
use_unit("forms.inc.php");
//use_unit("extctrls.inc.php");
//use_unit("stdctrls.inc.php");
/*
//Class definition
class DataModule1 extends DataModule
{
}
global $application;
global $DataModule1;
//Creates the form
$DataModule1=new DataModule1($application);
//Read from resource file
$DataModule1->loadResource(__FILE__);
*/
?>
---
If I comment out "//use_unit("forms.inc.php");", it takes 50-70 ms.
Thus, "use_unit("forms.inc.php");" is written incorrectly (in VCL style) it doesn't use Zend Style architecture when require_once is called only when it is required inside of function which speeds up the whole script. I suggest to fix it.
Workarounds
None
Attachment
None
Comments
Tomohiro Takahashi at 4/15/2012 5:02:37 AM
-
> 3) press F9;
What about pressing(Shift+Ctrl+F9) instead? It does not start Debugger sesion.
Alexey Kodubets at 4/18/2012 11:52:18 AM
-
Ctrl + Shift + F9 - It saves 50 ms max. The whole performance is still bad (200 ms).
I have rewritten part of my project without RPCL usage. I used PDO instead and it speeds up the project 5 times. Look likes the rpcl has monolithic archicture that is why it works so slowly.
Tomohiro Takahashi at 7/6/2012 1:09:26 AM
-
This report was opened.
But, Internal Tracking Number field is still blank.
View Your Reports
Search
Server Response from: ETNACODE01
Developer Tools
Blackfish SQL
C++Builder
Delphi
FireMonkey
Prism
InterBase
JBuilder
J Optimizer
HTML5 Builder
3rdRail & TurboRuby
Database Tools
Change Manager
DBArtisan
DB Optimizer
ER/Studio
Performance Center
Rapid SQL
Technical Articles
Tutorials
White Papers
Press Releases
Newsletters
Add Content (GetPublished)
Audio
Audio & Video
Video
Bugs & Suggestions (QualityCentral)
Discussion Forums
Examples (CodeCentral)
Tags
Technology Partners
Downloads
Free Trials
Registered User Downloads
Beta Programs
Add Content (GetPublished)
Articles
Blogs
Bugs & Suggestions (QualityCentral)
Discussion Forums
Examples (CodeCentral)
Member Services
About
Connect with Us