Tuesday, May 09, 2006

PHP IDE Debug Protocol

Lately there were many questions and comments on blogs and in PHP related forums regarding the debugger protocol, which will be used in the PHP IDE project at Eclipse.org. For those of you who are not familiar with the 'debug protocol' term or do not know what I am talking about here is a short explanation.

Debugging a PHP application or a PHP web server requires connectivity between an IDE and a Debugger engine (a PHP module which is installed on the web server). The debug protocol defines this connection. It determines how to initialize a debug session, which messages to use, etc. The level of debugging support, debugging performance, and the debugging extensibility are all derived from the debug protocol used.

Today there are two leading debug protocols: DBGp, an open source protocol and Zend Studio's protocol. Both protocols have been used in commercial products in the last few years and are good solutions for debugging PHP applications and PHP web servers.

When the Eclipse Foundation approved the PHP IDE project, Zend Studio's debug protocol was opened source and was chosen to be the debug protocol of the PHP IDE project. Zend Studio was known for its debugging capability and it is considered one of its big advantages, therefore, the decision to open source the protocol was obviously a big decision.

Why choose Zend Studio’s protocol?
Choosing is difficult, but choosing between two good alternatives is even more difficult. Both protocols have proved to be good solutions. So why we chose one over the other, there are two main reasons:

1. We chose performance (binary based protocol) over easy server side implementation (textual based protocol).

2. We preferred a solution designed specifically for PHP and is not bounded to support additional scripting languages. DBGp supports several scripting languages and from this derives some of its disadvantages. We believe that a debug protocol should be as 'close' as possible to the PHP language.


There are other differences between the two protocols and I will try to examine some of them:

Security
DBGp has a built-in Proxy mechanism, which allows multiple users debugging applications on the same development server. The Proxy mechanism has few bugs in it and as written in the DBGp documentation, it is not well defined: “We should think a bit more about what a proxy might need to do”.
The PHP IDE debug protocol does not specify requirements for a security system but defines that the Debug server should receive the client IP before initializing the session. By using the IP, implementing a security mechanism is very simple.

PHP Script Output and Errors
DBGp supports PHP execution stdout and stderr as a general solution for all supported languages. PHP IDE as a specific protocol for PHP can distingue between header output and standard output and between all types of PHP errors (warnings, errors and notices).

14 Comments:

Blogger Davey Shafik said...

Guy,

Thank you for setting up this blog to respond to the community over what I believe to be the most critical piece of software most of us have to choose - our editor.

It is nice to see some of the thought processes behind it, so that we can make informed choices.

- Davey

6:18 AM  
Blogger Rob... said...

I can only echo Davey's comments and say that I'm very much looking forward to what you have to say about the upcoming PHPIDE and Zend Studio releases.

9:14 AM  
Blogger Paco Ortiz said...

PHP IDE for Eclipse is a great tool for all PHP'ers. Congratulations to all the teams involved.

Looking forward to see that remote debugger up and running (v1.0 maybe? :-D)

7:51 AM  
Blogger mmrriad said...

hi
Here some cool proxy site

Freevisit Myspace Proxy
Internet Safety in Myspace
My Proxy Server
Free Myspace Proxy Server
Free Myspace Proxies
Unblock Myspace by Proxy
Unblock Myspace by proxies
Myspace CGI Proxy Server
Bebo Proxy Surfing
Bebo Proxy Server
Bebo Anonymous Proxy Server
Bebo Anonymous Surfing Proxy
Massvisit Myspace in School Proxy
Free Internet Proxy
Myspace Proxy - Myspace School Proxy
Myspace Proxy for School
Bebo Proxy for Firewall
Free Myspace Proxies
Free Internet Proxy Server
Free Anonymous Internet Proxy
Myspace Internet Proxy Service
Proxy Server for Internet Security
Myspace Internet Access
No Internet Filter Proxy Server
Proxy Server for Myspace Bebo Facebook Friendster
Proxy Server for Internet Safety
Free Internet Proxy Server
Proxy Server to Bypass Firewall
Myspace Bebo Anonymous Proxy Server
Myspace Bebo Internet Proxy
Myspace Bebo Proxy Service
Internet Proxy Browser
Anonymous Surfing Proxy Server
Myspace Bebo URL Proxy Server
Bebo Myspace Proxy Servers

2:20 AM  
Blogger Josef said...

I saw a free Malaysian proxy at http://www.webreveal.info

Web Proxy

5:38 PM  
Blogger Josef said...

Myspace Proxy
-Myspace Proxies

9:42 PM  
Blogger milf said...

black mold exposureblack mold symptoms of exposurewrought iron garden gatesiron garden gates find them herefine thin hair hairstylessearch hair styles for fine thin hairnight vision binocularsbuy night vision binocularslipitor reactionslipitor allergic reactionsluxury beach resort in the philippines

afordable beach resorts in the philippineshomeopathy for eczema.baby eczema.save big with great mineral makeup bargainsmineral makeup wholesalersprodam iphone Apple prodam iphone prahacect iphone manualmanual for P 168 iphonefero 52 binocularsnight vision Fero 52 binocularsThe best night vision binoculars here

night vision binoculars bargainsfree photo albums computer programsfree software to make photo albumsfree tax formsprintable tax forms for free craftmatic air bedcraftmatic air bed adjustable info hereboyd air bedboyd night air bed lowest pricefind air beds in wisconsinbest air beds in wisconsincloud air beds

best cloud inflatable air bedssealy air beds portableportables air bedsrv luggage racksaluminum made rv luggage racksair bed raisedbest form raised air bedsaircraft support equipmentsbest support equipments for aircraftsbed air informercialsbest informercials bed airmattress sized air beds

bestair bed mattress antique doorknobsantique doorknob identification tipsdvd player troubleshootingtroubleshooting with the dvd playerflat panel television lcd vs plasmaflat panel lcd television versus plasma pic the bestThe causes of economic recessionwhat are the causes of economic recessionadjustable bed air foam The best bed air foam

hoof prints antique equestrian printsantique hoof prints equestrian printsBuy air bedadjustablebuy the best adjustable air bedsair beds canadian storesCanadian stores for air beds

migraine causemigraine treatments floridaflorida headache clinicdrying dessicantair drying dessicantdessicant air dryerpediatric asthmaasthma specialistasthma children specialistcarpet cleaning dallas txcarpet cleaners dallascarpet cleaning dallas

1:50 PM  
Blogger Nicole C said...

buy viagra
viagra online
generic viagra

9:31 AM  
Blogger sam said...

Great task ! Your web page has presented me most of the help and advice I needed .
Garland TX Locksmith
locksmith Plantation FL
Locksmith Concord CA
Locksmith Sunnyvale CA
Locksmith Sunnyvale
Locksmith Sunnyvale
Locksmith Sunnyvale
locksmith irvine ca
locksmith irvine ca
pembroke pines locksmith
locksmith in hialeah
locksmith irvine ca
locksmith irvine ca
pembroke pines locksmith
irvine ca locksmith
mesquite locksmith
Hialeah FL Locksmith
locksmith fort worth
irvine locksmiths
locksmith fort worth
Hialeah FL Locksmith
Hialeah FL Locksmith
locksmith fort worth
irvine locksmiths
irvine locksmiths
locksmith pembroke pines

2:13 AM  
Blogger nikeairmaxshoe said...

Be fast to browse the newest styles and lots of affordable outfits and Nike oxygen Max and women's merchandise is not an daily affair, for that reason that in the stress of modern day time girls ordinarily do not possess a complete great offer time and vitality to go buying by means of countless many style malls, and look at special fees will make you exhausted, so which you can acquire a satisfactory goods, call up for to devote lots of time, the show up of on collection buying significantly minimizing the inconvenience of this, now you not just can every one of the sudden go to to lots of goods Nike Air Max Shoes .

6:25 AM  
Blogger sping.chen said...

Glad to see all the speakers, really wonderful content. Do not know if you like Nike mercurial soccer cleats or Nike soccer cleats and Nike Football Cleats,Nike Mercurial Vapor Superfly with New nike soccer shoes.

5:46 PM  
Blogger peterson said...

This is really nice. Thanks for your information.

PHP training Chennai

2:29 AM  
Blogger Abirami R said...

Its helped me.thank you for the discussion.it can easily understand
Best Android Training in Chennai

6:22 AM  
Blogger Kathiresan Muthu said...

Web Designing Training Institute in Chennai,

Besant Technologies is providing best CSS3 Training in Chennai. CSS stands for Cascading Style Sheets. Our CSS Training tends towards real-time practical international standard design layouts. Every static of dynamic webpages requires CSS to give good design impression.

Web Designing Training in Chennai

11:07 PM  

Post a Comment

<< Home