5.00 score from hupso.pl for:
sahanz.com



HTML Content


Titlesahan h. – technology person

Length: 28, Words: 4
Description technology person

Length: 17, Words: 2
Keywords pusty
Robots noodp,noydir
Charset UTF-8
Og Meta - Title exist
Og Meta - Description exist
Og Meta - Site name exist
Tytuł powinien zawierać pomiędzy 10 a 70 znaków (ze spacjami), a mniej niż 12 słów w długości.
Meta opis powinien zawierać pomiędzy 50 a 160 znaków (łącznie ze spacjami), a mniej niż 24 słów w długości.
Kodowanie znaków powinny być określone , UTF-8 jest chyba najlepszy zestaw znaków, aby przejść z powodu UTF-8 jest bardziej międzynarodowy kodowaniem.
Otwarte obiekty wykresu powinny być obecne w stronie internetowej (więcej informacji na temat protokołu OpenGraph: http://ogp.me/)

SEO Content

Words/Characters 5639
Text/HTML 51.20 %
Headings H1 1
H2 17
H3 49
H4 4
H5 1
H6 0
H1
sahan h.
H2
skip links
a hosting guide for application developers.
criteria for great application hosting
building the best hosting environment
planning a scaling roadmap
how’s uber in colombo, my take
apis slowing your app down? let’s speed it up.
how i went from 2000+ ms to 150< ms for api calls
data transfer objects – dto, better way to move data around
large data set and excel, php + python approach
in_array for multiple checks
when request::route() doesn’t give you controller and action
multiple file uploads in laravel
laravel and newrelic
static, not just for classes
primary sidebar
secondary sidebar
H3
location, location, location
bear metal or cloud/vps?
room to scale/options
management levels
what’s un-managed
managed
location.
scaling
horizontal & vertical
scaling with cloud
object storage
full services catalogue
the good
ride availability
still a novel concept for the drivers
time estimates
fare estimates
pricing & payment options


good for the tourists
the convenience
uber controversies
wrap up
what happened?
a middleman
the proxy
brining in caching
implementing
wrap up
installing
install composer
practical usage
making dto object
accessing data
iterating
json serializing
write protected
the problem

current setup



few options


final solution
about me
H4 proxy
redis for cache
implementation explained
using dot-notation
H5 requestmanager
H6
strong
os level management
slas
but do we really need this?
keep in mind that, even though uber offers paypal, it doesn’t work. it’ll ask you to set up a credit card when you try to request a ride.
managing the cache
b
i
em os level management
slas
but do we really need this?
keep in mind that, even though uber offers paypal, it doesn’t work. it’ll ask you to set up a credit card when you try to request a ride.
managing the cache
Bolds strong 5
b 0
i 0
em 5
Zawartość strony internetowej powinno zawierać więcej niż 250 słów, z stopa tekst / kod jest wyższy niż 20%.
Pozycji używać znaczników (h1, h2, h3, ...), aby określić temat sekcji lub ustępów na stronie, ale zwykle, użyj mniej niż 6 dla każdego tagu pozycje zachować swoją stronę zwięzły.
Styl używać silnych i kursywy znaczniki podkreślić swoje słowa kluczowe swojej stronie, ale nie nadużywać (mniej niż 16 silnych tagi i 16 znaczników kursywy)

Statystyki strony

twitter:title pusty
twitter:description pusty
google+ itemprop=name exist
Pliki zewnętrzne 20
Pliki CSS 4
Pliki javascript 16
Plik należy zmniejszyć całkowite odwołanie plików (CSS + JavaScript) do 7-8 maksymalnie.

Linki wewnętrzne i zewnętrzne

Linki 116
Linki wewnętrzne 2
Linki zewnętrzne 114
Linki bez atrybutu Title 116
Linki z atrybutem NOFOLLOW 0
Linki - Użyj atrybutu tytuł dla każdego łącza. Nofollow link jest link, który nie pozwala wyszukiwarkom boty zrealizują są odnośniki no follow. Należy zwracać uwagę na ich użytkowania

Linki wewnętrzne

skip to content #genesis-content
skip to primary sidebar #genesis-sidebar-primary

Linki zewnętrzne

sahan h. http://sahanh.me/
a hosting guide for application developers. http://sahanh.me/2016/01/11/a-hosting-guide-for-application-developers/
http://sahanh.me/author/sahan/
leave a comment http://sahanh.me/2016/01/11/a-hosting-guide-for-application-developers/#respond
digitalocean https://www.digitalocean.com/
linode https://www.linode.com/
softlayer http://softlayer.com
aws http://aws.amazon.com
rackspace http://rackspace.com
aws dynamo db https://aws.amazon.com/dynamodb/getting-started/
s3 https://aws.amazon.com/s3
cloud files https://www.rackspace.com/cloud/files
object storage http://www.softlayer.com/object-storage
object storage https://cloud.google.com/storage/docs/overview
object storage https://azure.microsoft.com/en-us/services/storage/
https://aws.amazon.com/servicecatalog https://aws.amazon.com/servicecatalog/
https://cloud.google.com/products https://cloud.google.com/products/
https://www.rackspace.com/cloud https://www.rackspace.com/cloud/
http://www.softlayer.com http://www.softlayer.com/
https://azure.microsoft.com/en-us https://azure.microsoft.com/en-us/
application hosting http://sahanh.me/category/application-hosting/
how’s uber in colombo, my take http://sahanh.me/2015/10/24/hows-uber-in-colombo-my-take/
http://sahanh.me/author/sahan/
1 comment http://sahanh.me/2015/10/24/hows-uber-in-colombo-my-take/#comments
http://readme.lk/ayubowan-uber-sri-lanka/ http://readme.lk/ayubowan-uber-sri-lanka/
- http://i0.wp.com/famous-control.flywheelsites.com/wp-content/uploads/2015/10/uber_colombo_coverage.png
- http://i0.wp.com/famous-control.flywheelsites.com/wp-content/uploads/2015/10/uber_ride_arriving.jpg
- http://i1.wp.com/famous-control.flywheelsites.com/wp-content/uploads/2015/10/uber_ride_near.jpg
- http://i2.wp.com/famous-control.flywheelsites.com/wp-content/uploads/2015/10/uber_pricing-e1445654127434.png
- http://i1.wp.com/famous-control.flywheelsites.com/wp-content/uploads/2015/10/uber_receipt.jpg
- http://i0.wp.com/famous-control.flywheelsites.com/wp-content/uploads/2015/10/uber_email_receipt.jpg
uncategorized http://sahanh.me/category/uncategorized/
apis slowing your app down? let’s speed it up. http://sahanh.me/2015/08/07/apis-slowing-your-app-down-lets-speed-it-up/
http://sahanh.me/author/sahan/
leave a comment http://sahanh.me/2015/08/07/apis-slowing-your-app-down-lets-speed-it-up/#respond
- http://i2.wp.com/famous-control.flywheelsites.com/wp-content/uploads/2015/08/speed-api-diag-1.png
- http://i2.wp.com/famous-control.flywheelsites.com/wp-content/uploads/2015/08/api-speed-diag-2.png
https://github.com/sahanh/api-proxy https://github.com/sahanh/api-proxy
https://github.com/jenssegers/php-proxy https://github.com/jenssegers/php-proxy
http://redis.io/topics/quickstart http://redis.io/topics/quickstart
symfony http foundation http://symfony.com/doc/current/components/http_foundation/introduction.html
php http://sahanh.me/category/php/
quick http://sahanh.me/category/quick/
api http://sahanh.me/tag/api/
caching http://sahanh.me/tag/caching/
performance http://sahanh.me/tag/performance/
php http://sahanh.me/tag/php-2/
proxy http://sahanh.me/tag/proxy/
redis http://sahanh.me/tag/redis/
data transfer objects – dto, better way to move data around http://sahanh.me/2014/08/14/better-way-to-move-data-through-app-dto/
http://sahanh.me/author/sahan/
leave a comment http://sahanh.me/2014/08/14/better-way-to-move-data-through-app-dto/#respond
http://martinfowler.com/eaacatalog/datatransferobject.html http://martinfowler.com/eaacatalog/datatransferobject.html
https://github.com/sahanh/simpledto https://github.com/sahanh/simpledto
uncategorized http://sahanh.me/category/uncategorized/
large data set and excel, php + python approach http://sahanh.me/2014/07/08/large-data-set-and-excel-php-python-approach/
http://sahanh.me/author/sahan/
1 comment http://sahanh.me/2014/07/08/large-data-set-and-excel-php-python-approach/#comments
http://poi.apache.org/ http://poi.apache.org/
more http://ilia.ws/archives/222-php-excel-extension.html
http://www.libxl.com/ http://www.libxl.com/
openpyxl https://pythonhosted.org/openpyxl/
python-excel http://www.python-excel.org/
php http://sahanh.me/category/php/
programming http://sahanh.me/category/programming/
python http://sahanh.me/category/python/
in_array for multiple checks http://sahanh.me/2013/06/05/quick-tip-use-in_array-to-for-multiple-checks/
http://sahanh.me/author/sahan/
leave a comment http://sahanh.me/2013/06/05/quick-tip-use-in_array-to-for-multiple-checks/#respond
php http://sahanh.me/category/php/
programming http://sahanh.me/category/programming/
quick http://sahanh.me/category/quick/
when request::route() doesn’t give you controller and action http://sahanh.me/2013/05/21/accessing-controller-and-action-outside-the-controller/
http://sahanh.me/author/sahan/
leave a comment http://sahanh.me/2013/05/21/accessing-controller-and-action-outside-the-controller/#respond
lifecycle of a laravel request #1 http://laravel.io/topic/9/the-lifecycle-of-a-laravel-request-part-1
lifecycle of a laravel request #2 http://laravel.io/topic/11/the-lifecycle-of-a-laravel-request-part-2
reflection api http://php.net/manual/en/book.reflection.php
php http://sahanh.me/category/php/
programming http://sahanh.me/category/programming/
laravel http://sahanh.me/tag/laravel/
laravel 3 http://sahanh.me/tag/laravel-3/
multiple file uploads in laravel http://sahanh.me/2013/04/07/multiple-file-uploads-in-laravel/
http://sahanh.me/author/sahan/
1 comment http://sahanh.me/2013/04/07/multiple-file-uploads-in-laravel/#comments
php http://sahanh.me/category/php/
programming http://sahanh.me/category/programming/
laravel http://sahanh.me/tag/laravel/
laravel and newrelic http://sahanh.me/2013/02/27/laravel-and-newrelic/
http://sahanh.me/author/sahan/
3 comments http://sahanh.me/2013/02/27/laravel-and-newrelic/#comments
https://newrelic.com/docs/php/new-relic-for-php https://newrelic.com/docs/php/new-relic-for-php
https://gist.github.com/sahanh/5050326#file-newrelic-php https://gist.github.com/sahanh/5050326#file-newrelic-php
ioc container http://laravel.com/docs/ioc
programming http://sahanh.me/category/programming/
laravel http://sahanh.me/tag/laravel/
newrelic http://sahanh.me/tag/newrelic/
static, not just for classes http://sahanh.me/2013/02/27/static-not-just-for-classes/
http://sahanh.me/author/sahan/
leave a comment http://sahanh.me/2013/02/27/static-not-just-for-classes/#respond
http://php.net/manual/en/language.variables.scope.php http://php.net/manual/en/language.variables.scope.php
pimple http://pimple.sensiolabs.org/
source https://github.com/fabpot/pimple/blob/master/lib/pimple.php#l119
singletons http://en.wikipedia.org/wiki/singleton_pattern
php http://sahanh.me/category/php/
programming http://sahanh.me/category/programming/
page 1 http://sahanh.me/
page 2 http://sahanh.me/page/2/
next page » http://sahanh.me/page/2/
- http://www.zend.com/en/yellow-pages#show-clientcandidateid=zend020146
@sahanh http://github.com/sahanh
genesis framework http://www.studiopress.com/
wordpress http://wordpress.org/
log in http://sahanh.me/wp-login.php

Zdjęcia

Zdjęcia 11
Zdjęcia bez atrybutu ALT 5
Zdjęcia bez atrybutu TITLE 11
Korzystanie Obraz ALT i TITLE atrybutu dla każdego obrazu.

Zdjęcia bez atrybutu TITLE

http://i0.wp.com/sahanh.me/wp-content/uploads/2016/01/sahanh_ping_test.png
http://i0.wp.com/sahanh.me/wp-content/uploads/2016/01/laravel_ping_test.png
http://i0.wp.com/famous-control.flywheelsites.com/wp-content/uploads/2015/10/uber_colombo_coverage.png?resize=621%2c510
http://i0.wp.com/famous-control.flywheelsites.com/wp-content/uploads/2015/10/uber_ride_arriving-577x1024.jpg?resize=577%2c1024
http://i1.wp.com/famous-control.flywheelsites.com/wp-content/uploads/2015/10/uber_ride_near-577x1024.jpg?resize=577%2c1024
http://i2.wp.com/famous-control.flywheelsites.com/wp-content/uploads/2015/10/uber_pricing-e1445654127434.png?resize=1050%2c140
http://i2.wp.com/famous-control.flywheelsites.com/wp-content/uploads/2015/10/uber_receipt-577x1024.jpg?resize=577%2c1024
http://i0.wp.com/famous-control.flywheelsites.com/wp-content/uploads/2015/10/uber_email_receipt.jpg?resize=742%2c744
http://i2.wp.com/famous-control.flywheelsites.com/wp-content/uploads/2015/08/speed-api-diag-1.png?resize=834%2c385
http://i2.wp.com/famous-control.flywheelsites.com/wp-content/uploads/2015/08/api-speed-diag-2.png?resize=960%2c753
http://static.zend.com/topics/zce-php5-3-logo.gif

Zdjęcia bez atrybutu ALT

http://i0.wp.com/famous-control.flywheelsites.com/wp-content/uploads/2015/10/uber_ride_arriving-577x1024.jpg?resize=577%2c1024
http://i1.wp.com/famous-control.flywheelsites.com/wp-content/uploads/2015/10/uber_ride_near-577x1024.jpg?resize=577%2c1024
http://i2.wp.com/famous-control.flywheelsites.com/wp-content/uploads/2015/10/uber_receipt-577x1024.jpg?resize=577%2c1024
http://i0.wp.com/famous-control.flywheelsites.com/wp-content/uploads/2015/10/uber_email_receipt.jpg?resize=742%2c744
http://static.zend.com/topics/zce-php5-3-logo.gif

Ranking:


Alexa Traffic
Daily Global Rank Trend
Daily Reach (Percent)









Majestic SEO











Text on page:

skip links skip to content skip to primary sidebar sahan h.technology persona hosting guide for application developers. january 11, 2016 by sahan leave a comment the times have changed, for majority of php developers the norm used to be all about cheap shared hosting, we had godaddy, hostgator, bluehost, ipage. but times have changed, cms and application development is going on different routes and if you are still looking at shared hosting to deploy that newly built api, application suite, you are not serious about your code. developing is only the first part of the journey, you should consider leveraging a good deployment environment along with a great workflow to save the time of you and your entire development team. shared hosting or anything in that nature will work if you want to play around, but for a commercial project consider using at least a virtual server. read on to see why. criteria for great application hosting location, location, location location of your application will play a important part for your audience. if you choose the right location, audience will see a considerable performance gain when they use your application. say your application is targetted for south asian community, then there’s no point in hosting your application in a us based data center. for sri lanka, from my tests the best place to host applications is singapore. to demonstrate this, if you ping sahanh.com which is hosted in singapore, the latency is under 100ms. it’s good. and if you ping laravel.com this means, every request made to the website from any client (browser), former wil have a ~80ms delay while latter having almost 4 times of that. this is just a ping test, so in real world the delays of database calls, script execution or worst case external api calls will add up to a request. also keep in mind, a request will be a call to your script + assets (images, css, js) bear metal or cloud/vps? with bear metal you are going to get limited to the physical hardware, application will be directly hosted within a physical server and since there are no middle layers for things like virualization (hypervisor), you’ll get the most from your hardware. with vps, there will be performance bottlenecks compare to bear metal, but in reality for most applications vps/cloud would be the ideal way to host an application. you get on-demand scaling, means you can increase the allocated ram, hdd quickly than a bear metal server. because in bear metal, a person physically has to add a new ram and that takes time. room to scale/options aws, google, softlayer/ibm, azure, rackspace the big players of the cloud market not only provide servers, but they have a huge catalog of solutions to cater specific needs. for example, aws and google has their own nosql solutions so developers can completely forget about the management parts and focus on just storing data and developing of the application. read on to see what we can do with these offerings. but providers like linode, digitalocean only have virtual servers. management levels for business critical applications, the management is required. by default, almost all the providers provide un-managed servers. and 98% of cloud and vps providers are offering servers without support. what’s un-managed of course the hosting providers will need to handle the network, server up time and regular maintenance in a harware level. but once the server is setup, with un-managed support, you’ll get the full responsibility of management from the os point. you’ll need to update the os with security updates, firewall settings, or any application packages. that’s why servers get cheaper, specially the cloud ones. managed managed servers come at a cost, but you’ll get. os level management provider will take care of regular patching of the os, server monitoring + customer support line. even though with managed support, providers don’t provide application level support (like if you’re database query is not working it’s your fault), they will try to support as much as they can. managed support differs from provider to provider, so it’s always better to do some digging before signing up. also typically server providers support common stacks like lamp, but they won’t promise it in an agreement. slas when you get managed support from a provider, typically they will provide a sla (service level agreement). with slas, if provider fail to meet a something that they promised during your subscription, they will do a partial refund. each sla is different and most common way is to reimburse with refunds. what this means is, even with managed support things can go wrong, but you’ll have commitment from provider’s end. building the best hosting environment with above criteria let’s look at our options. location. to host in singapore, below providers have datacenters in singapore. digitalocean (digialocean is using an upstream provider called (equinix) linode (linode might probably be using an upstream provider, couldn’t find who they are) softlayer aws rackspace (rackspace doesn’t have a data center in singapore, closest is in hong kong) scaling all above providers support on-demand scaling. you can create a server with 4 gb of ram and make it 8 gb within few minutes. planning a scaling roadmap horizontal & vertical as you know, we typically get a single server and put our entire stack within that. language runtim (php, node etc) + the db + http server. but if you are planning a good amount of traffic upfront, breaking the application stack is the easiest way to scale. for example let’s say our application is hosted in a single server, the database, the http server and our application is sitting there. we get a traffic spike and our application start to crash. now the thing is, most of the time it will be a single component that’s behind this crash, say mysql running out of memory. of course you can add more ram (that’s vertical scaling), but depends on the business need you can’t keep adding ram forever. modern applications handle quite a lot of data, and do lot of processing, it’s always better to keep each component in a separate layer. imagine, mysql running in a separate server. now you have access to database layer on a separate server, you can bring another server and offload traffic to that. adding more servers instead of adding more resources to a single box is called horizontal scaling. but do we really need this? depends on your application, this approach will be an overkill. if you have no idea about the traffic, start from a single vps. scale from there. as experts always say, don’t do premature optimization. but keep the options in mind when things go down. scaling with cloud apart from on-demand resource increase capabilities (ram, hdd, cores) one more popular thing is to leverage hoted services. each cloud provider comes with their own eco system. this works well for startups, for example if you leverage aws dynamo db you can completely forget about database server management parts and focus on business logic. that’s a good call if you are already hosting within aws. google’s cloud platform has cloud databases. our ultimate goal is to move quickly and outsource more operation overhead to elsewhere. object storage one popular offering of most cloud providers is the object storage. the popular guy in town for this is aws s3. remember we used to upload all the images to the public path of our application? we ain’t doing that anymore, instead its highly recommened to upload these to an external service like aws s3 and storing in the url within the app. your application becomes more portable. provider server options storage aws cloud (ec2) s3 rackspace cloud/bare metal cloud files softlayer cloud/bare metal object storage google cloud object storage azure cloud object storage linode vps none digitalocean vps none full services catalogue aws – https://aws.amazon.com/servicecatalog google – https://cloud.google.com/products rackspace – https://www.rackspace.com/cloud softlayer – http://www.softlayer.com azure – https://azure.microsoft.com/en-us keep in mind, with hosted services you might go in to a vendor lock-in, so if you select dynamodb to integrate with your application, you can’t leave aws without changing database engines. filed under: application hosting how’s uber in colombo, my take october 24, 2015 by sahan 1 comment who would’ve thought a company like uber would come to a small country like sri lanka. but they did, and they officially went live on 22nd october 2015.  http://readme.lk/ayubowan-uber-sri-lanka/ so i signed up and used my promotional discounts today on 2 rides (uberincmb is the code). overall impression – i like it 🙂 the good i like the fact that uber only focusing on cars, the only major provider in cars is kangaroo and uber will directly compete with them. safe to say all the 3-wheel taxi services have no competition from uber, the nanos might have some in terms of pricing. also the drivers were very pleasant and friendly, no reckless driving, which under a company i’ve only seen among kangaroo drivers. not going to say anything on three wheelers, but for nanos most of the drivers i’ve encountered in the past are good, but still 2 out of 10 nano rides i take, i meet a driver who’d drive upside down if he could. ride availability i’m a frequent user of budget taxi, time to time kangaroo and i haven’t used pick me yet (no rides available when i needed in my area). i live in piliyandala and i have to say yesterday there were plenty of rides available around my area. not sure if uber intentionally follows a ride distribution mechanism. my first ride was from piliyandala to nugegoda, at around 6 pm and then around 9:00 pm i came back from nugegoda. on both trips i had no troubles on finding rides. both of the rides i got were toyota prius, the 2008 models to be specific. uber’s coverage map in official website. still a novel concept for the drivers in both trips after i request, both drivers called me and asked for directions (even though they had my location right there on the mobile). car drivers might be bit behind the tech compared to three wheel drivers who use pick me. any who, i had to speak with them few times before taking the ride. hopefully once they get used to the service it’ll go away. but for the time being it’s like our usual standards, voice confirmation is necessary. so before you request a ride, make sure that you’re not in a meeting. time estimates this is an obvious one, after a ride is requested the estimated arrival time uber gives is no where near the realistic times, which is understandable. from a little chat i had with the drivers, sometimes due to this fact drivers had to reject requests. so keep in mind, even though app shows an arrival time of 5 – 6 minutes, in reality it will drag unless you are requesting a cab at midnight. my return ride, took almost 15 minutes to arrive while uber showed he’s just 5 minutes away. fare estimates fare estimates came pretty close for me, so i’d say it’s accurate and you can get a good idea. pricing & payment options uber pricing as advertised on their website. keep in mind that, even though uber offers paypal, it doesn’t work. it’ll ask you to set up a credit card when you try to request a ride. good for the tourists i’m not sure if this has been a game plan of uber. since uber is popular among other countries, most of the foreigners who come to sri lanka are already familiar with the service, and surprise! we are in the tourist season right now, so uber good timing on the launch! apparently i was the only sri lankan hire my return ride had yesterday, and he had 8 rides. the convenience if i could rate, i’d say 10 for the payments. you just need to link your credit card and you can forget about pulling the wallet out. for the taxi requests, i still had to speak with the riders couple of time, this will of course change down the road. uber controversies if there’s one thing uber is famous for besides disrupting the transport industry, it’s stirring up controversy. since it started expanding, uber has had to solve a mountain of legal issues wherever it went. the problem is that these issues have always surrounded uber in a layer of controversy. none of it pretty. – readme.lk but in sri lanka, i have a hard time believing uber will face a similar situations. to start off, as far as i know, we don’t have government’s involvement in car taxi industry or licensing systems (yet). and the cab drivers uber uses right now are experienced drivers who has been in the field for years, at least the ones i spoke to, so i’m counting on professionalism of drivers to be remain. wrap up all in all, it’s good to see a multi-national company like uber coming to sri lanka, it’s only a matter of time we see if it’ll stick around, but nevertheless uber coming to sri lanka will make new standards in the taxi industry, which is something we need, big time. filed under: uncategorized apis slowing your app down? let’s speed it up. august 7, 2015 by sahan leave a comment how i went from 2000+ ms to 150< ms for api calls apis, apis, apis everywhere! one major thing we as developers run into when using external services through rest apis is the latency, and if the remote api goes down our users are left hanging in middle of requests. what happened? this particular project was a mobile client based one, where we only had the mobile client using an external api. external api was using oauth for authentication and mobile client had to make sure on each request the token is refreshed properly. simple set up, simple app. though it’s simple enough, the main dependency and the major component of the app is out of our control; the api. by mid way of the project the api calls started to slow down and users started to notice the “lag”. a middleman to gain some what control of the api, the option is to build a middle-wear between the real api and mobile client. but since the application is already deployed we have to make sure that the transition happens with minimal work for our mobile developers, given these requirement and situation the best approach is to build a proxy which maintain the formats, endpoints of the existing api. the proxy by the end of building the proxy, client developers only have to swap the domain of the api, and proxy will take care of the rest. brining in caching with a cache sitting behind the proxy, the responses of the requests can be cached for sometime offering a significant decrease in waiting time for the client. implementing using php, here’s the stuff we need. make sure to run the latest and greatest version of php. checkout the working code at https://github.com/sahanh/api-proxy proxy there’s an excellent composer package to build out a proxy, https://github.com/jenssegers/php-proxy redis for cache for the cache, i’m using redis. redis is an in-memory key-value store/data structure server which fits perfectly for our use case. http://redis.io/topics/quickstart implementation explained the proxy package uses symfony http foundation , a popular component of symfony project used by other frameworks including laravel. symfont http foundation allows us to work with http layer in an object oriented way. under public we have our serving index.php. in index.php file, we create a request object and pass it to requestmanager which make sure the caching and authentication is happening. requestmanager requestmanager uses our proxy package and redis caching. keep in mind the passing request object has all the details related to our final api call. our client is sending a uri (eg: /sample/endpoint) and if it’s post/put hopefully a request body. managing the cache as soon as the requestmanger receive the request, it generates a unique identifier for that request so it can look up in cache for it’s existence. when generating this key, it takes the path (uri) client called and the requesting body. this will make sure that when client send a different request body, its treated as a new cacheable request. these 2 string are concatenated and a hash is generated, this will be the “index” to manage the specific response cache of the request. using the generated key requestmanager looks up a response in our cache and if it exists, a symfony http response object is returned to the caller. otherwise continuing the request flow. if no response exist in cache, we calling the vendor api, we have defined the vendor api host in class, and using client’s request path we build the final url to call. so http://our-api.com/sample/endpoint becomes http://vendor-api.com/sample/endpoint after building request to the vendor api, we are calling the vendor api, if it’s a 401, in our apis case, the request token is invalid, so we are attempting it again after refreshing our token. note that in here generated token is also stored in cache. after another request, if the status is 200 (success) we store the response in cache with the key we generated. wrap up this simple approach can give a huge boost to the overall user experience, when caching always make sure to pay attention to changing variables of request life cycle. for my case, treating uri + body unique was sufficient. also checkout full fledged caching systems like varnish. checkout a demo of the api once its implemented. filed under: php, quick tagged with: api, caching, performance, php, proxy, redisdata transfer objects – dto, better way to move data around august 14, 2014 by sahan leave a comment so in our applications we have classes doing various tasks, same for functions. we pass in some data (arguments) and get a result. sometimes these functions and methods returns a boolean, true or false. but most of the time we’re dealing with some sort of data set, arrays or objects. since now it’s a trend to move logic out of the controllers (when done right it’s a good thing) to so called “service” classes, array or stdclass object is the only native way to return some sort of data collection. and these arrays are directly passed to views. if you like me, you should’ve thought “isn’t there a better way to do this?”, you bet! dtos or data transfer objects to the rescue. don’t let the name tip you off, it’s really a simple concept. at the end of the day we need a better way to move data between our applications. data transfer object (dto) is an object that carries data between processes. -wikipedia if you want to read more about the subject, here’s a link to the “bible” http://martinfowler.com/eaacatalog/datatransferobject.html note that dto is a paradigm, the technical usage can be differ from context to context. specially in ddd, dtos are created to a context. i’ve been using a simple dto class for a while and decided to create a composer package out of it, check it out. https://github.com/sahanh/simpledto installing package can be installed via composer. install composer curl -ss https://getcomposer.org/installer | php next, update your project’s composer.json file to include simpledto: { "require": { "sahanh/simpledto": "~1.0" } } practical usage when returning complex data, instead of returning an array dtos can be returned. class userservice { public function getusers() { $rows = $this->db->users->get(); return dto::make($rows); } } view or controllers can use dto objects to access data. no need to worry about undefined index errors when using get method. {{ $data->get('name') }} @foreach($data->get('cars') as $car)

{{ $car }}

@endforeach making dto object use shsimpledtodto; $raw = [ 'id' => 1, 'name' => 'john doe', 'email' => 'john@doe.com', 'address' => [ 'street' => '123 main st.', 'city' => 'wind' ], 'cars' => [ 'bmw-7', 'toyota supra', 'nissan gt', 'jaguar' ] ]; //pass an array or stdclass objects $dto = dto::make($raw); accessing data //accessing properties echo $dto->name; //john doe echo $dto->address->city; //wind //accessing as an array echo $dto['name']; //john doe echo $dto["address"]["city"] //wind using dot-notation dto’s data can be accessed using get method, get method accept . for nested elements echo $dto->get('address.city'); one advantage of get is, data can be accessed without making sure if they exist or not. //returns null without errors, (no undefined index errors like in arrays) $dto->get('address.country'); iterating for every nested array element data new dto object will be created on retrival, and dto object implements iteratoraggregate inteface. foreach ($dto->cars as $car) { echo $car; } //since `$dto->cars` is an array, `$dto->cars` will be returning another dto object. $cars = $dto->cars; echo $cars->get(0); //accessing get() of dto object json serializing pass the dto object to json_encode and get the data in json echo json_encode($dto); write protected data inside a dto object cannot be modified once created making it perfect to move around. //runtimeexception - 'data cannot be modified' $dto->new_value = 'some value'; $dto['new_value'] = 'some value'; credits: the library uses illuminate/helpers package filed under: uncategorized large data set and excel, php + python approach july 8, 2014 by sahan 1 comment the problem there’s a growing set of data and these data needs to be exported as an excel file. the points i had in hand, can’t do a direct export from the database, because the data is raw and meaningless, needs to run through the app. a single row expands up to “dt” column, single row span across 50+ cells. got an excel template (with heavy styling) to use when exporting. increasing php’s memory limit isn’t an option (anymore). app is running inside a linux server. current setup up until now i used phpexcel to export these data, phpexcel doesn’t play nice with the memory, it’s a great library, highly customizable, works very well with stylings. since phpexcel does everything in memory (pretty much every library does that), the amount of memory it uses increase with the data. not so good for the long run. the app’s logic go through the data and generate an associative array of [cell address] => [value] for each row [ "a1" => "john", "b1" => "doe", "c1" => "09876542" ] after that, phpexcel writes to the file $excel = phpexcel_iofactory::createreader('excel2007'); $reader = $excel->load($path); $reader->setactivesheetindex(0); $sheet = $reader->getactivesheet(); $rows = []; //get the data foreach ($rows as $key => $row) { foreach ($row as $cell => $val) { $sheet->setcellvalue($cell, $val); } } $writer = phpexcel_iofactory::createwriter($r, 'excel2007'); $writer->save('php://output'); few options i tried to optimize my app’s code as much as possible, due to the underlying nature phpexcel behaves there’s a limit we can go when it comes to optimizing. not to mention that phpexcel takes time no matter how much memory you got. so my research began and found few promising options. apache poi, a popular java library to work with office file formats. http://poi.apache.org/ libxl based php wrapper, more while the php part is open source, it’s depending on an extension called libxl, a closed source commercial product. http://www.libxl.com/ the tests on libxl has generated impressive results for both speed and memory consumption. python based, openpyxl and python-excel final solution i ended up using python-excel. instead of writing to the excel file, my app now writes the data as json to a file. each line in the json dump is a json_encode ‘ed associate array, a.k.a json object. and once that done, it’s kicking off a python script which reads it line by line, parse it and write to excel file. below’s the final python script. and here’s how the json dump looks like, note that these objects are on each line and not wrapped around an array, meaning if you parse the json file as whole it’s invalid. parsing line by line is what we need since it’s the best way to save memory. and one important thing, i saved as my base excel file as .xls (excel 2004, reduced the file size a bit). {"a1":"john", "b1":"doe", "c1":"1234"} {"a2":"john", "b2":"doe", "c2":"1234"} ... note the 29th line, the python-excel library also keep the excel file in memory, however with the flush_row_data() call it’s moving what we already modified to the disk. flush_row_data() is meant to call after we stack up some modifications to the file, i’m doing it on every 500th row. the final solution works well and in terms of memory usage both of the scripts under 50mb mark. quite fast too, from 12+ minutes to under 3 minutes. filed under: php, programming, python in_array for multiple checks june 5, 2013 by sahan leave a comment i’ve came across if statement like this numerous times now. if ($var == 'value1' or $var == 'value2' or $var == 'value3' or $var == 'value4' or $var == 'value5') { } not only it takes time to write a condition like this, you’re running out of space in the editor. use in_array and it’ll look much nicer and cleaner. if (in_array($var, ['value1', 'value2', 'value3', 'value4', 'value5'])) { } filed under: php, programming, quick when request::route() doesn’t give you controller and action may 21, 2013 by sahan leave a comment grabbing the controller and action out of a request is easy in laravel 3, it’s just a matter of grabbing the route object using request::route() and accessing the controller and action properties. but the problem is in real world user cases this doesn’t work very well. specially when detecting controller and action inside a route filter. here’s why. laravel’s route handling is done by few classes. if you do a backtrace, $uri = uri::current(); request::$route = router::route(request::method(), $uri); $response = request::$route->call(); $response->render(); laravel/laravel.php (stripped down version) first laravel get the current uri, using uri::current(). this returns url for the current request, no http s, query strings. something like post/create then it creates a route object by calling router::route($method, $current_uri) by passing the method of the current request (get/post) and the uri. the method is grabbed using request::method() after that it gets a response object by calling call method of the route object. public function call() { //runs filter $response = filter::run($this->filters('before'), array(), true); if (is_null($response)) { $response = $this->response(); //this is where controller is resolved } //more stuff filter::run($this->filters('after'), array(&$response)); return $response; } laravel/routing/route.php (stripped down version) inside $this->response(); public function response() { return controller::call($delegate, $this->parameters); } laravel/routing/route.php (stripped down version) inside controller::call public static function call($destination, $parameters = array()) { static::references($destination, $parameters); //finally, set the controller and action //... } laravel/routing/controller.php (stripped down version) if you do a dd($destination) after static::references call, it will shows the complete path for the route’s controller and action. something like. posts@new, if it’s a nested controller users.posts@new finally, calls the render method of the response object. this whole process is visible in laravel/laravel.php inside route::call it runs the “before” filters then resolve the controller and action for the specific request. this is when controller name and action is assigned to request::route() object. so if you try to access request::route()->controller from the before filter, it returns null. the workaround i did was to run logic controller::references for controller and action resolve inside my custom filter, which is executed “before” route call. controller::references is protected and the only way to access is to make it public which involves a core file edit, or using relfection api to access it, i’ve done the later. this will output the full path to the controller and route, if you want to get them separately just explode the $d on @, first part will be the controller, 2nd part action. note that my solution specifically targeted controller based routes. you will need to do checks if you have closure based routes, improve my gist. worth checking. lifecycle of a laravel request #1 lifecycle of a laravel request #2 reflection api filed under: php, programming tagged with: laravel, laravel 3multiple file uploads in laravel april 7, 2013 by sahan 1 comment out of the box laravel doesn’t support multiple file uploads in one go. however, since laravel uses symfony’s httpfoundation library under the hood, handling a multiple file upload is easy. assuming my file input field’s name is “file[]” foreach((array) request::foundation()->files->get('file') as $file) { if(!is_null($file)) { $file->move('save_directory', 'new_file_name_with_ext'); } } so the obvious, request::foundation()->files->get('file') return an array, array of “uploadedfile” objects. you can do neat things with this object, the class implementing the object is located at laravel/vendor/symfony/component/httpfoundation/file/uploadedfile.php $file->getclientoriginalname(); //grab the original file name $file->guessextension(); //grab the ext this is for laravel 3 and technique should be applicable to laravel 4 as well. filed under: php, programming tagged with: laravellaravel and newrelic february 27, 2013 by sahan 3 comments newrelic, from where can i start… it’s best freakin thing i came across (recently). since you’re here i’m sure you’re already using newrelic. new relic does support some php frameworks out of the box, at the time i’m writing this newrelic doesn’t get the laravel’s routing seriously, resulting all of your requests to show as index.php i rolled up my own helper library to use newrelic’s core features. if you want to learn the know-how refer this https://newrelic.com/docs/php/new-relic-for-php get the code from https://gist.github.com/sahanh/5050326#file-newrelic-php. put this inside application/libraries/newrelic.php (i’m talking about laravel v3). to get things rolling, you need to hook in to one of the core events. this will tell the correct route. event::listen('laravel.done', function($request){ $route = request::route(); $transaction = $route->controller . '/' . $route->controller_action; newrelic::capturetransaction($transaction); }); to send errors to newrelic, update the logger at config/error.php 'logger' => function($exception) { newreloc::captureexception($exception); //log::exception($exception); uncomment this if you want to use the default logging with newrelic }, to get the javascript links (so you can monitor performance from end user’s point as well) call browserheader and browserfooter methods from your views. if you have artisan tasks or cron jobs running, call markbackgrondtask method in the beginning on those tasks/requests so newrelic knows that it’s a background task. using the class directly on your code will introduce a new dependency to your code, so if you want you can use ioc container to store an instance of the class. ioc::singleton('monitor', function(){ return new newrelic; }); you can call the methods as usual, ioc::resolve('monitor')->captureexception($throw); don’t forget to contribute to the code! filed under: programming tagged with: laravel, newrelicstatic, not just for classes february 27, 2013 by sahan leave a comment we’ve seen static inside classes, “a lot”. in context to oop, static is used to declare static properties and static methods, which doesn’t need an instance of a class to work with. also when extending classes, static is used to access static properties and methods of the parent class. anyhows, static can be used for variable scoping as well. when a variable is declared as static inside a function it’s value will remain the same on multiple function calls. function test() { static $a = 5; echo $a."n"; $a++; } test(); //5 test(); //6 test(); //7 this is from the manual, for the 101 check http://php.net/manual/en/language.variables.scope.php the popular dic library “pimple” uses static variable to store shared “objects”, clever. here’s an excerpt from the source. public static function share(closure $callable) { return function ($c) use ($callable) { static $object; if (null === $object) { $object = $callable($c); } return $object; }; } by default, each time you get an object, pimple returns a new instance of it. if you want the same instance to be returned for all calls, wrap your anonymous function with the share() method: $c['session'] = $c->share(function ($c) { return new session($c['session_storage']); }); since pimple store sharable objects as static, rest assured that only one instance of that object remains, singletons nicely done! filed under: php, programming page 1 page 2 next page » primary sidebarabout me self-taught programmer from sri lanka! i just love to put computers to work. github – @sahanh secondary sidebarcopyright © 2017 · genesis framework · wordpress · log in


Here you find all texts from your page as Google (googlebot) and others search engines seen it.

Words density analysis:

Numbers of all words: 5248

One word

Two words phrases

Three words phrases

the - 5.72% (300)
and - 2% (105)
you - 1.71% (90)
for - 1.54% (81)
all - 1.41% (74)
out - 1.26% (66)
our - 1.07% (56)
request - 1.01% (53)
app - 0.97% (51)
with - 0.95% (50)
get - 0.9% (47)
data - 0.88% (46)
file - 0.86% (45)
are - 0.84% (44)
object - 0.84% (44)
call - 0.84% (44)
php - 0.82% (43)
this - 0.78% (41)
use - 0.76% (40)
dto - 0.71% (37)
can - 0.63% (33)
wil - 0.61% (32)
that - 0.61% (32)
will - 0.59% (31)
new - 0.59% (31)
time - 0.57% (30)
api - 0.57% (30)
application - 0.57% (30)
end - 0.57% (30)
route - 0.55% (29)
laravel - 0.53% (28)
http - 0.53% (28)
it’s - 0.51% (27)
one - 0.51% (27)
server - 0.5% (26)
from - 0.5% (26)
here - 0.5% (26)
control - 0.5% (26)
not - 0.48% (25)
have - 0.48% (25)
excel - 0.46% (24)
controller - 0.46% (24)
provide - 0.46% (24)
but - 0.46% (24)
uber - 0.46% (24)
return - 0.42% (22)
your - 0.42% (22)
using - 0.42% (22)
array - 0.4% (21)
provider - 0.38% (20)
host - 0.38% (20)
manage - 0.38% (20)
work - 0.36% (19)
like - 0.36% (19)
when - 0.36% (19)
ram - 0.36% (19)
thing - 0.36% (19)
under - 0.34% (18)
doe - 0.34% (18)
value - 0.34% (18)
cloud - 0.34% (18)
response - 0.34% (18)
way - 0.34% (18)
need - 0.32% (17)
some - 0.32% (17)
sahan - 0.32% (17)
row - 0.32% (17)
method - 0.32% (17)
static - 0.32% (17)
ride - 0.32% (17)
run - 0.3% (16)
function - 0.3% (16)
class - 0.3% (16)
ext - 0.3% (16)
relic - 0.3% (16)
read - 0.29% (15)
base - 0.29% (15)
own - 0.27% (14)
newrelic - 0.27% (14)
action - 0.27% (14)
$dto - 0.27% (14)
only - 0.27% (14)
uri - 0.27% (14)
they - 0.27% (14)
log - 0.27% (14)
drive - 0.27% (14)
sure - 0.27% (14)
each - 0.27% (14)
had - 0.25% (13)
access - 0.25% (13)
add - 0.25% (13)
support - 0.25% (13)
drivers - 0.23% (12)
set - 0.23% (12)
cache - 0.23% (12)
client - 0.23% (12)
off - 0.23% (12)
there - 0.23% (12)
good - 0.23% (12)
make - 0.23% (12)
now - 0.23% (12)
proxy - 0.23% (12)
how - 0.23% (12)
service - 0.23% (12)
aws - 0.21% (11)
code - 0.21% (11)
memory - 0.21% (11)
since - 0.21% (11)
json - 0.21% (11)
comment - 0.21% (11)
which - 0.21% (11)
most - 0.21% (11)
more - 0.21% (11)
layer - 0.21% (11)
any - 0.21% (11)
does - 0.21% (11)
user - 0.19% (10)
- 0.19% (10)
create - 0.19% (10)
down - 0.19% (10)
inside - 0.19% (10)
simple - 0.19% (10)
part - 0.19% (10)
filed - 0.19% (10)
hosting - 0.19% (10)
under: - 0.19% (10)
used - 0.19% (10)
cars - 0.19% (10)
about - 0.19% (10)
let - 0.19% (10)
after - 0.19% (10)
these - 0.19% (10)
name - 0.19% (10)
here’s - 0.19% (10)
start - 0.17% (9)
around - 0.17% (9)
say - 0.17% (9)
who - 0.17% (9)
lanka - 0.17% (9)
managed - 0.17% (9)
providers - 0.17% (9)
sri - 0.17% (9)
objects - 0.17% (9)
echo - 0.17% (9)
has - 0.17% (9)
single - 0.17% (9)
very - 0.17% (9)
keep - 0.17% (9)
filter - 0.17% (9)
option - 0.17% (9)
php, - 0.17% (9)
times - 0.15% (8)
check - 0.15% (8)
doesn’t - 0.15% (8)
i’m - 0.15% (8)
python - 0.15% (8)
real - 0.15% (8)
try - 0.15% (8)
take - 0.15% (8)
put - 0.15% (8)
phpexcel - 0.15% (8)
just - 0.15% (8)
point - 0.15% (8)
database - 0.15% (8)
main - 0.15% (8)
public - 0.15% (8)
line - 0.15% (8)
write - 0.15% (8)
library - 0.15% (8)
space - 0.13% (7)
pass - 0.13% (7)
build - 0.13% (7)
once - 0.13% (7)
options - 0.13% (7)
upload - 0.13% (7)
generate - 0.13% (7)
metal - 0.13% (7)
where - 0.13% (7)
leave - 0.13% (7)
see - 0.13% (7)
though - 0.13% (7)
is, - 0.13% (7)
ask - 0.13% (7)
come - 0.13% (7)
current - 0.13% (7)
final - 0.13% (7)
servers - 0.13% (7)
even - 0.13% (7)
popular - 0.13% (7)
before - 0.13% (7)
rides - 0.13% (7)
package - 0.13% (7)
well - 0.13% (7)
found - 0.13% (7)
location - 0.13% (7)
$response - 0.13% (7)
scaling - 0.13% (7)
storage - 0.13% (7)
index - 0.13% (7)
also - 0.13% (7)
uses - 0.13% (7)
calls - 0.13% (7)
api, - 0.13% (7)
vps - 0.13% (7)
direct - 0.13% (7)
want - 0.13% (7)
script - 0.13% (7)
what - 0.13% (7)
vendor - 0.13% (7)
users - 0.11% (6)
mid - 0.11% (6)
mobile - 0.11% (6)
requests - 0.11% (6)
then - 0.11% (6)
called - 0.11% (6)
redis - 0.11% (6)
composer - 0.11% (6)
foundation - 0.11% (6)
apis - 0.11% (6)
caching - 0.11% (6)
developers - 0.11% (6)
look - 0.11% (6)
tip - 0.11% (6)
rackspace - 0.11% (6)
programming - 0.11% (6)
$var - 0.11% (6)
move - 0.11% (6)
both - 0.11% (6)
google - 0.11% (6)
$car - 0.11% (6)
path - 0.11% (6)
every - 0.11% (6)
ping - 0.11% (6)
applications - 0.11% (6)
object. - 0.11% (6)
was - 0.11% (6)
foreach - 0.11% (6)
management - 0.11% (6)
right - 0.11% (6)
minutes - 0.11% (6)
200 - 0.11% (6)
other - 0.11% (6)
based - 0.11% (6)
store - 0.11% (6)
source - 0.11% (6)
full - 0.11% (6)
done - 0.11% (6)
mind - 0.11% (6)
classes - 0.11% (6)
2013 - 0.1% (5)
solve - 0.1% (5)
i’ve - 0.1% (5)
github - 0.1% (5)
multiple - 0.1% (5)
services - 0.1% (5)
taxi - 0.1% (5)
api. - 0.1% (5)
already - 0.1% (5)
wrap - 0.1% (5)
works - 0.1% (5)
me. - 0.1% (5)
component - 0.1% (5)
its - 0.1% (5)
eco - 0.1% (5)
running - 0.1% (5)
$route - 0.1% (5)
differ - 0.1% (5)
returns - 0.1% (5)
specific - 0.1% (5)
best - 0.1% (5)
accessing - 0.1% (5)
node - 0.1% (5)
quick - 0.1% (5)
you’re - 0.1% (5)
don’t - 0.1% (5)
refer - 0.1% (5)
level - 0.1% (5)
save - 0.1% (5)
null - 0.1% (5)
case - 0.1% (5)
server. - 0.1% (5)
solution - 0.1% (5)
request::route() - 0.1% (5)
external - 0.1% (5)
project - 0.1% (5)
you’ll - 0.1% (5)
things - 0.1% (5)
within - 0.1% (5)
bear - 0.1% (5)
much - 0.1% (5)
methods - 0.1% (5)
laravel. - 0.1% (5)
symfony - 0.1% (5)
softlayer - 0.1% (5)
key - 0.1% (5)
generated - 0.1% (5)
instance - 0.1% (5)
variable - 0.1% (5)
there’s - 0.1% (5)
few - 0.1% (5)
exist - 0.1% (5)
note - 0.1% (5)
better - 0.1% (5)
always - 0.1% (5)
version - 0.1% (5)
token - 0.08% (4)
array, - 0.08% (4)
fact - 0.08% (4)
resolve - 0.08% (4)
core - 0.08% (4)
file. - 0.08% (4)
major - 0.08% (4)
libxl - 0.08% (4)
properties - 0.08% (4)
proxy, - 0.08% (4)
php. - 0.08% (4)
(stripped - 0.08% (4)
test() - 0.08% (4)
export - 0.08% (4)
version) - 0.08% (4)
requestmanager - 0.08% (4)
errors - 0.08% (4)
transfer - 0.08% (4)
show - 0.08% (4)
tech - 0.08% (4)
calling - 0.08% (4)
with: - 0.08% (4)
tagged - 0.08% (4)
give - 0.08% (4)
monitor - 0.08% (4)
pay - 0.08% (4)
body - 0.08% (4)
request, - 0.08% (4)
logic - 0.08% (4)
page - 0.08% (4)
$rows - 0.08% (4)
link - 0.08% (4)
came - 0.08% (4)
install - 0.08% (4)
back - 0.08% (4)
day - 0.08% (4)
routing - 0.08% (4)
context - 0.08% (4)
$object - 0.08% (4)
it’ll - 0.08% (4)
that’s - 0.08% (4)
hosted - 0.08% (4)
update - 0.08% (4)
comes - 0.08% (4)
separate - 0.08% (4)
play - 0.08% (4)
great - 0.08% (4)
sla - 0.08% (4)
url - 0.08% (4)
without - 0.08% (4)
offering - 0.08% (4)
middle - 0.08% (4)
approach - 0.08% (4)
catalog - 0.08% (4)
takes - 0.08% (4)
directly - 0.08% (4)
forget - 0.08% (4)
while - 0.08% (4)
instead - 0.08% (4)
request. - 0.08% (4)
something - 0.08% (4)
performance - 0.08% (4)
linode - 0.08% (4)
shared - 0.08% (4)
stack - 0.08% (4)
traffic - 0.08% (4)
still - 0.08% (4)
might - 0.08% (4)
azure - 0.08% (4)
first - 0.08% (4)
usage - 0.06% (3)
created - 0.06% (3)
digitalocean - 0.06% (3)
meet - 0.06% (3)
classes, - 0.06% (3)
business - 0.06% (3)
dtos - 0.06% (3)
between - 0.06% (3)
their - 0.06% (3)
returning - 0.06% (3)
view - 0.06% (3)
hanging - 0.06% (3)
behind - 0.06% (3)
example - 0.06% (3)
sometime - 0.06% (3)
it, - 0.06% (3)
composer. - 0.06% (3)
send - 0.06% (3)
checkout - 0.06% (3)
specially - 0.06% (3)
life - 0.06% (3)
why - 0.06% (3)
making - 0.06% (3)
provider, - 0.06% (3)
typically - 0.06% (3)
let’s - 0.06% (3)
defined - 0.06% (3)
file, - 0.06% (3)
index.php - 0.06% (3)
center - 0.06% (3)
arrays - 0.06% (3)
returned - 0.06% (3)
call. - 0.06% (3)
same - 0.06% (3)
way. - 0.06% (3)
building - 0.06% (3)
course - 0.06% (3)
un-managed - 0.06% (3)
json_encode - 0.06% (3)
should - 0.06% (3)
consider - 0.06% (3)
newrelic. - 0.06% (3)
deploy - 0.06% (3)
route. - 0.06% (3)
custom - 0.06% (3)
filters - 0.06% (3)
well. - 0.06% (3)
location, - 0.06% (3)
response() - 0.06% (3)
complete - 0.06% (3)
process - 0.06% (3)
routes - 0.06% (3)
}); - 0.06% (3)
($c) - 0.06% (3)
test(); - 0.06% (3)
pimple - 0.06% (3)
sidebar - 0.06% (3)
framework - 0.06% (3)
remain - 0.06% (3)
going - 0.06% (3)
default - 0.06% (3)
different - 0.06% (3)
tasks - 0.06% (3)
ioc - 0.06% (3)
in_array - 0.06% (3)
gain - 0.06% (3)
physical - 0.06% (3)
modified - 0.06% (3)
mind, - 0.06% (3)
needs - 0.06% (3)
raw - 0.06% (3)
rest - 0.06% (3)
would - 0.06% (3)
increase - 0.06% (3)
//accessing - 0.06% (3)
means - 0.06% (3)
on-demand - 0.06% (3)
nested - 0.06% (3)
that. - 0.06% (3)
across - 0.06% (3)
singapore, - 0.06% (3)
($row - 0.06% (3)
python-excel - 0.06% (3)
lanka, - 0.06% (3)
application. - 0.06% (3)
$reader - 0.06% (3)
"doe", - 0.06% (3)
almost - 0.06% (3)
limit - 0.06% (3)
website - 0.06% (3)
"john", - 0.06% (3)
'name' - 0.06% (3)
focus - 0.06% (3)
idea - 0.06% (3)
none - 0.06% (3)
nano - 0.06% (3)
close - 0.06% (3)
files - 0.06% (3)
matter - 0.06% (3)
could - 0.06% (3)
were - 0.06% (3)
me, - 0.06% (3)
one, - 0.06% (3)
problem - 0.06% (3)
lot - 0.06% (3)
pretty - 0.06% (3)
got - 0.06% (3)
app. - 0.06% (3)
hard - 0.06% (3)
cab - 0.06% (3)
far - 0.06% (3)
started - 0.06% (3)
change - 0.06% (3)
data, - 0.06% (3)
box - 0.06% (3)
industry - 0.06% (3)
another - 0.06% (3)
now, - 0.06% (3)
adding - 0.06% (3)
went - 0.06% (3)
wheel - 0.06% (3)
company - 0.06% (3)
estimates - 0.06% (3)
credit - 0.06% (3)
them - 0.06% (3)
can’t - 0.06% (3)
kangaroo - 0.06% (3)
skip - 0.06% (3)
pricing - 0.06% (3)
plan - 0.06% (3)
scale - 0.06% (3)
been - 0.06% (3)
through - 0.06% (3)
doing - 0.06% (3)
2015 - 0.06% (3)
$uri - 0.04% (2)
important - 0.04% (2)
request::$route - 0.04% (2)
trips - 0.04% (2)
'value1' - 0.04% (2)
audience - 0.04% (2)
checks - 0.04% (2)
around, - 0.04% (2)
($var - 0.04% (2)
handling - 0.04% (2)
commercial - 0.04% (2)
aws. - 0.04% (2)
grabbing - 0.04% (2)
easy - 0.04% (2)
least - 0.04% (2)
virtual - 0.04% (2)
laravel’s - 0.04% (2)
'value4' - 0.04% (2)
'value3' - 0.04% (2)
dynamo - 0.04% (2)
criteria - 0.04% (2)
why. - 0.04% (2)
'value2' - 0.04% (2)
map - 0.04% (2)
($rows - 0.04% (2)
//get - 0.04% (2)
$sheet - 0.04% (2)
leverage - 0.04% (2)
$cell - 0.04% (2)
'excel2007'); - 0.04% (2)
$writer - 0.04% (2)
$val) - 0.04% (2)
bit - 0.04% (2)
$excel - 0.04% (2)
"a1" - 0.04% (2)
latency - 0.04% (2)
app’s - 0.04% (2)
"b1" - 0.04% (2)
resource - 0.04% (2)
writes - 0.04% (2)
"c1" - 0.04% (2)
concept - 0.04% (2)
apache - 0.04% (2)
parse - 0.04% (2)
line, - 0.04% (2)
dump - 0.04% (2)
toyota - 0.04% (2)
meaning - 0.04% (2)
programming, - 0.04% (2)
however - 0.04% (2)
... - 0.04% (2)
tests - 0.04% (2)
writing - 0.04% (2)
open - 0.04% (2)
website. - 0.04% (2)
java - 0.04% (2)
extension - 0.04% (2)
this, - 0.04% (2)
singapore. - 0.04% (2)
official - 0.04% (2)
rides. - 0.04% (2)
entire - 0.04% (2)
three - 0.04% (2)
helper - 0.04% (2)
serious - 0.04% (2)
among - 0.04% (2)
$transaction - 0.04% (2)
logger - 0.04% (2)
seen - 0.04% (2)
$route->controller - 0.04% (2)
developing - 0.04% (2)
newrelic, - 0.04% (2)
original - 0.04% (2)
//grab - 0.04% (2)
located - 0.04% (2)
becomes - 0.04% (2)
cloud/bare - 0.04% (2)
27, - 0.04% (2)
february - 0.04% (2)
changing - 0.04% (2)
october - 0.04% (2)
country - 0.04% (2)
changed, - 0.04% (2)
$object; - 0.04% (2)
static, - 0.04% (2)
overall - 0.04% (2)
links - 0.04% (2)
primary - 0.04% (2)
next - 0.04% (2)
$callable) - 0.04% (2)
thought - 0.04% (2)
class. - 0.04% (2)
nanos - 0.04% (2)
terms - 0.04% (2)
declare - 0.04% (2)
parent - 0.04% (2)
cheap - 0.04% (2)
development - 0.04% (2)
object, - 0.04% (2)
$file) - 0.04% (2)
highly - 0.04% (2)
static::references - 0.04% (2)
$parameters - 0.04% (2)
action. - 0.04% (2)
finally, - 0.04% (2)
yesterday - 0.04% (2)
whole - 0.04% (2)
render - 0.04% (2)
long - 0.04% (2)
controller::call - 0.04% (2)
request::method() - 0.04% (2)
nature - 0.04% (2)
images - 0.04% (2)
call() - 0.04% (2)
anything - 0.04% (2)
laravel/routing/route.php - 0.04% (2)
$this->response(); - 0.04% (2)
runs - 0.04% (2)
“before” - 0.04% (2)
lifecycle - 0.04% (2)
gist. - 0.04% (2)
closure - 0.04% (2)
laravel, - 0.04% (2)
uploads - 0.04% (2)
request::foundation()->files->get('file') - 0.04% (2)
httpfoundation - 0.04% (2)
2nd - 0.04% (2)
output - 0.04% (2)
filter, - 0.04% (2)
available - 0.04% (2)
piliyandala - 0.04% (2)
did - 0.04% (2)
controller::references - 0.04% (2)
environment - 0.04% (2)
pick - 0.04% (2)
laravel/laravel.php - 0.04% (2)
ride, - 0.04% (2)
slas - 0.04% (2)
off, - 0.04% (2)
string - 0.04% (2)
promise - 0.04% (2)
looks - 0.04% (2)
readme.lk - 0.04% (2)
common - 0.04% (2)
face - 0.04% (2)
unique - 0.04% (2)
body. - 0.04% (2)
ones - 0.04% (2)
to, - 0.04% (2)
all, - 0.04% (2)
above - 0.04% (2)
passing - 0.04% (2)
systems - 0.04% (2)
field - 0.04% (2)
case, - 0.04% (2)
up. - 0.04% (2)
2014 - 0.04% (2)
handle - 0.04% (2)
regular - 0.04% (2)
out. - 0.04% (2)
layer. - 0.04% (2)
true - 0.04% (2)
functions - 0.04% (2)
support, - 0.04% (2)
industry, - 0.04% (2)
care - 0.04% (2)
query - 0.04% (2)
working - 0.04% (2)
issues - 0.04% (2)
variables - 0.04% (2)
demo - 0.04% (2)
controversy. - 0.04% (2)
options. - 0.04% (2)
frameworks - 0.04% (2)
august - 0.04% (2)
apis, - 0.04% (2)
server, - 0.04% (2)
client. - 0.04% (2)
situation - 0.04% (2)
language - 0.04% (2)
runtim - 0.04% (2)
amount - 0.04% (2)
slow - 0.04% (2)
database, - 0.04% (2)
authentication - 0.04% (2)
mysql - 0.04% (2)
memory. - 0.04% (2)
there. - 0.04% (2)
up, - 0.04% (2)
dependency - 0.04% (2)
sitting - 0.04% (2)
speed - 0.04% (2)
know, - 0.04% (2)
coming - 0.04% (2)
find - 0.04% (2)
standards - 0.04% (2)
cache, - 0.04% (2)
redis. - 0.04% (2)
below - 0.04% (2)
upstream - 0.04% (2)
uncategorized - 0.04% (2)
scaling. - 0.04% (2)
implementing - 0.04% (2)
quite - 0.04% (2)
vertical - 0.04% (2)
horizontal - 0.04% (2)
planning - 0.04% (2)
minutes. - 0.04% (2)
stuff - 0.04% (2)
sort - 0.04% (2)
tourist - 0.04% (2)
compare - 0.04% (2)
metal, - 0.04% (2)
`$dto->cars` - 0.04% (2)
$cars - 0.04% (2)
get() - 0.04% (2)
protected - 0.04% (2)
sometimes - 0.04% (2)
layers - 0.04% (2)
reality - 0.04% (2)
element - 0.04% (2)
method, - 0.04% (2)
accessed - 0.04% (2)
//wind - 0.04% (2)
shows - 0.04% (2)
requests. - 0.04% (2)
(no - 0.04% (2)
due - 0.04% (2)
arrival - 0.04% (2)
cannot - 0.04% (2)
ride. - 0.04% (2)
hopefully - 0.04% (2)
away. - 0.04% (2)
isn’t - 0.04% (2)
speak - 0.04% (2)
delay - 0.04% (2)
setup - 0.04% (2)
world - 0.04% (2)
calls, - 0.04% (2)
value'; - 0.04% (2)
'some - 0.04% (2)
perfect - 0.04% (2)
obvious - 0.04% (2)
depends - 0.04% (2)
points - 0.04% (2)
usual - 0.04% (2)
requesting - 0.04% (2)
//john - 0.04% (2)
completely - 0.04% (2)
really - 0.04% (2)
parts - 0.04% (2)
context. - 0.04% (2)
work. - 0.04% (2)
solutions - 0.04% (2)
payment - 0.04% (2)
that, - 0.04% (2)
live - 0.04% (2)
storing - 0.04% (2)
default, - 0.04% (2)
controllers - 0.04% (2)
objects. - 0.04% (2)
stdclass - 0.04% (2)
views. - 0.04% (2)
servers. - 0.04% (2)
card - 0.04% (2)
i’d - 0.04% (2)
huge - 0.04% (2)
'cars' - 0.04% (2)
'john - 0.04% (2)
this? - 0.04% (2)
quickly - 0.04% (2)
hdd - 0.04% (2)
ram, - 0.04% (2)
application, - 0.04% (2)
$raw - 0.04% (2)
fare - 0.04% (2)
data. - 0.04% (2)
time. - 0.04% (2)
big - 0.04% (2)
undefined - 0.04% (2)
person - 0.04% (2)
because - 0.04% (2)
$car) - 0.04% (2)
memory, - 0.04% (2)
of the - 0.55% (29)
if you - 0.46% (24)
to the - 0.29% (15)
you can - 0.25% (13)
our application - 0.25% (13)
for the - 0.23% (12)
with the - 0.23% (12)
in the - 0.21% (11)
by sahan - 0.19% (10)
filed under: - 0.19% (10)
controller and - 0.17% (9)
get the - 0.17% (9)
and action - 0.17% (9)
will be - 0.17% (9)
out of - 0.17% (9)
it’s a - 0.17% (9)
dto object - 0.15% (8)
sri lanka - 0.15% (8)
your app - 0.15% (8)
and the - 0.15% (8)
the data - 0.15% (8)
way to - 0.15% (8)
make sure - 0.13% (7)
this is - 0.13% (7)
you want - 0.13% (7)
the controller - 0.13% (7)
leave a - 0.13% (7)
have a - 0.13% (7)
can be - 0.13% (7)
the app - 0.13% (7)
your application - 0.13% (7)
in mind - 0.11% (6)
from the - 0.11% (6)
a single - 0.11% (6)
the time - 0.11% (6)
need to - 0.11% (6)
you are - 0.11% (6)
sahan leave - 0.11% (6)
an array - 0.11% (6)
a comment - 0.11% (6)
is the - 0.1% (5)
of data - 0.1% (5)
php, programming - 0.1% (5)
managed support - 0.1% (5)
this will - 0.1% (5)
want to - 0.1% (5)
here’s a - 0.1% (5)
object storage - 0.1% (5)
keep in - 0.1% (5)
had to - 0.1% (5)
to move - 0.1% (5)
to access - 0.1% (5)
using a - 0.1% (5)
on the - 0.1% (5)
$var == - 0.1% (5)
all the - 0.1% (5)
a good - 0.1% (5)
bear metal - 0.1% (5)
a request - 0.1% (5)
and if - 0.1% (5)
used to - 0.1% (5)
down version) - 0.08% (4)
we have - 0.08% (4)
the best - 0.08% (4)
in real - 0.08% (4)
the proxy - 0.08% (4)
(stripped down - 0.08% (4)
server and - 0.08% (4)
application is - 0.08% (4)
to work - 0.08% (4)
if the - 0.08% (4)
the only - 0.08% (4)
a ride - 0.08% (4)
mobile client - 0.08% (4)
even though - 0.08% (4)
most of - 0.08% (4)
the drivers - 0.08% (4)
the vendor - 0.08% (4)
note that - 0.08% (4)
to get - 0.08% (4)
from a - 0.08% (4)
in cache - 0.08% (4)
which is - 0.08% (4)
instance of - 0.08% (4)
you have - 0.08% (4)
{ return - 0.08% (4)
tagged with: - 0.08% (4)
to sri - 0.06% (3)
takes time - 0.06% (3)
there’s a - 0.06% (3)
api calls - 0.06% (3)
sure if - 0.06% (3)
have to - 0.06% (3)
but for - 0.06% (3)
to say - 0.06% (3)
of memory - 0.06% (3)
me and - 0.06% (3)
try to - 0.06% (3)
so keep - 0.06% (3)
an array, - 0.06% (3)
the json - 0.06% (3)
to host - 0.06% (3)
data transfer - 0.06% (3)
work with - 0.06% (3)
to run - 0.06% (3)
{ static - 0.06% (3)
time of - 0.06% (3)
create a - 0.06% (3)
in our - 0.06% (3)
better way - 0.06% (3)
the response - 0.06% (3)
shared hosting - 0.06% (3)
response object - 0.06% (3)
instead of - 0.06% (3)
sure that - 0.06% (3)
i have - 0.06% (3)
uber in - 0.06% (3)
an excel - 0.06% (3)
the file - 0.06% (3)
data can - 0.06% (3)
sahan 1 - 0.06% (3)
to build - 0.06% (3)
public function - 0.06% (3)
to make - 0.06% (3)
sri lanka, - 0.06% (3)
and you - 0.06% (3)
in mind, - 0.06% (3)
a separate - 0.06% (3)
1 comment - 0.06% (3)
they will - 0.06% (3)
7, 2013 - 0.06% (3)
the method - 0.06% (3)
file upload - 0.06% (3)
be the - 0.06% (3)
the class - 0.06% (3)
you get - 0.06% (3)
of course - 0.06% (3)
method of - 0.06% (3)
but they - 0.06% (3)
forget about - 0.06% (3)
for example - 0.06% (3)
you’ll get - 0.06% (3)
using an - 0.06% (3)
the route - 0.06% (3)
the code - 0.06% (3)
to use - 0.06% (3)
object is - 0.06% (3)
the current - 0.06% (3)
to see - 0.06% (3)
the problem - 0.06% (3)
what we - 0.06% (3)
in laravel - 0.06% (3)
data and - 0.06% (3)
programming tagged - 0.06% (3)
route object - 0.06% (3)
laravel 3 - 0.06% (3)
the os - 0.06% (3)
returning an - 0.04% (2)
$callable) { - 0.04% (2)
a laravel - 0.04% (2)
as well. - 0.04% (2)
$rows = - 0.04% (2)
static properties - 0.04% (2)
data. no - 0.04% (2)
undefined index - 0.04% (2)
some sort - 0.04% (2)
of that - 0.04% (2)
uploads in - 0.04% (2)
static inside - 0.04% (2)
can use - 0.04% (2)
lifecycle of - 0.04% (2)
stdclass object - 0.04% (2)
the popular - 0.04% (2)
the end - 0.04% (2)
need a - 0.04% (2)
array of - 0.04% (2)
sort of - 0.04% (2)
of your - 0.04% (2)
there a - 0.04% (2)
a simple - 0.04% (2)
the full - 0.04% (2)
file uploads - 0.04% (2)
context to - 0.04% (2)
the same - 0.04% (2)
a composer - 0.04% (2)
library to - 0.04% (2)
is for - 0.04% (2)
data between - 0.04% (2)
//grab the - 0.04% (2)
the box - 0.04% (2)
array or - 0.04% (2)
public static - 0.04% (2)
27, 2013 - 0.04% (2)
properties and - 0.04% (2)
to save - 0.04% (2)
to store - 0.04% (2)
the excel - 0.04% (2)
real world - 0.04% (2)
a route - 0.04% (2)
excel file. - 0.04% (2)
json dump - 0.04% (2)
you do - 0.04% (2)
each line - 0.04% (2)
static is - 0.04% (2)
file in - 0.04% (2)
just a - 0.04% (2)
an instance - 0.04% (2)
is easy - 0.04% (2)
with: laravel, - 0.04% (2)
like this - 0.04% (2)
came across - 0.04% (2)
in terms - 0.04% (2)
returns a - 0.04% (2)
grabbing the - 0.04% (2)
php, programming, - 0.04% (2)
line by - 0.04% (2)
by calling - 0.04% (2)
as $car) - 0.04% (2)
is used - 0.04% (2)
and get - 0.04% (2)
laravel/routing/route.php (stripped - 0.04% (2)
be accessed - 0.04% (2)
//john doe - 0.04% (2)
you try - 0.04% (2)
using get - 0.04% (2)
update the - 0.04% (2)
doe echo - 0.04% (2)
be modified - 0.04% (2)
'some value'; - 0.04% (2)
after that - 0.04% (2)
can go - 0.04% (2)
current request - 0.04% (2)
final solution - 0.04% (2)
options i - 0.04% (2)
object by - 0.04% (2)
data set - 0.04% (2)
"doe", "c1" - 0.04% (2)
using the - 0.04% (2)
on your - 0.04% (2)
one of - 0.04% (2)
coming to - 0.04% (2)
know, we - 0.04% (2)
make it - 0.04% (2)
an upstream - 0.04% (2)
amount of - 0.04% (2)
is hosted - 0.04% (2)
and our - 0.04% (2)
the database, - 0.04% (2)
upstream provider - 0.04% (2)
host in - 0.04% (2)
always better - 0.04% (2)
from provider - 0.04% (2)
providers support - 0.04% (2)
provide a - 0.04% (2)
but you’ll - 0.04% (2)
meet a - 0.04% (2)
it will - 0.04% (2)
running out - 0.04% (2)
the object - 0.04% (2)
and focus - 0.04% (2)
management parts - 0.04% (2)
to upload - 0.04% (2)
external service - 0.04% (2)
vps none - 0.04% (2)
cloud/bare metal - 0.04% (2)
cloud provider - 0.04% (2)
have no - 0.04% (2)
lot of - 0.04% (2)
you can’t - 0.04% (2)
running in - 0.04% (2)
adding more - 0.04% (2)
your application, - 0.04% (2)
depends on - 0.04% (2)
as much - 0.04% (2)
managed support, - 0.04% (2)
also keep - 0.04% (2)
you ping - 0.04% (2)
hosted in - 0.04% (2)
to your - 0.04% (2)
within a - 0.04% (2)
bear metal, - 0.04% (2)
from your - 0.04% (2)
at least - 0.04% (2)
around, but - 0.04% (2)
times have - 0.04% (2)
comment the - 0.04% (2)
have changed, - 0.04% (2)
you should - 0.04% (2)
in that - 0.04% (2)
a great - 0.04% (2)
but in - 0.04% (2)
ram, hdd - 0.04% (2)
only have - 0.04% (2)
can do - 0.04% (2)
by default, - 0.04% (2)
will need - 0.04% (2)
care of - 0.04% (2)
will take - 0.04% (2)
read on - 0.04% (2)
focus on - 0.04% (2)
not only - 0.04% (2)
ram and - 0.04% (2)
their own - 0.04% (2)
can completely - 0.04% (2)
parts and - 0.04% (2)
the management - 0.04% (2)
application hosting - 0.04% (2)
2015 by - 0.04% (2)
of our - 0.04% (2)
component of - 0.04% (2)
and mobile - 0.04% (2)
started to - 0.04% (2)
since the - 0.04% (2)
build a - 0.04% (2)
for our - 0.04% (2)
an external - 0.04% (2)
the mobile - 0.04% (2)
matter of - 0.04% (2)
uber coming - 0.04% (2)
time we - 0.04% (2)
skip to - 0.04% (2)
under: uncategorized - 0.04% (2)
will make - 0.04% (2)
end of - 0.04% (2)
building the - 0.04% (2)
a huge - 0.04% (2)
request to - 0.04% (2)
api, we - 0.04% (2)
sure to - 0.04% (2)
transfer objects - 0.04% (2)
our applications - 0.04% (2)
2014 by - 0.04% (2)
a response - 0.04% (2)
the specific - 0.04% (2)
the proxy, - 0.04% (2)
the api, - 0.04% (2)
our use - 0.04% (2)
symfony http - 0.04% (2)
proxy package - 0.04% (2)
request object - 0.04% (2)
company like - 0.04% (2)
it’s good - 0.04% (2)
speak with - 0.04% (2)
behind the - 0.04% (2)
rides i - 0.04% (2)
arrival time - 0.04% (2)
due to - 0.04% (2)
credit card - 0.04% (2)
in reality - 0.04% (2)
both trips - 0.04% (2)
i came - 0.04% (2)
good i - 0.04% (2)
like uber - 0.04% (2)
terms of - 0.04% (2)
kangaroo and - 0.04% (2)
when i - 0.04% (2)
rides available - 0.04% (2)
when you - 0.04% (2)
request a - 0.04% (2)
that these - 0.04% (2)
problem is - 0.04% (2)
uber will - 0.04% (2)
taxi industry - 0.04% (2)
drivers who - 0.04% (2)
right now - 0.04% (2)
since it - 0.04% (2)
the taxi - 0.04% (2)
has been - 0.04% (2)
not sure - 0.04% (2)
uber is - 0.04% (2)
the tourist - 0.04% (2)
i’d say - 0.04% (2)
my return - 0.04% (2)
and methods - 0.04% (2)
controller and action - 0.15% (8)
if you want - 0.13% (7)
by sahan leave - 0.11% (6)
sahan leave a - 0.11% (6)
filed under: php, - 0.11% (6)
the controller and - 0.1% (5)
under: php, programming - 0.1% (5)
you want to - 0.1% (5)
2013 by sahan - 0.1% (5)
keep in mind - 0.1% (5)
most of the - 0.08% (4)
the vendor api - 0.08% (4)
or $var == - 0.08% (4)
(stripped down version) - 0.08% (4)
by sahan 1 - 0.06% (3)
sahan 1 comment - 0.06% (3)
the vendor api, - 0.06% (3)
better way to - 0.06% (3)
to work with - 0.06% (3)
our application is - 0.06% (3)
keep in mind, - 0.06% (3)
if you are - 0.06% (3)
will be a - 0.06% (3)
under: php, programming, - 0.04% (2)
parts and focus - 0.04% (2)
can completely forget - 0.04% (2)
the current request - 0.04% (2)
will take care - 0.04% (2)
the json dump - 0.04% (2)
//john doe echo - 0.04% (2)
can be accessed - 0.04% (2)
using an upstream - 0.04% (2)
} laravel/routing/route.php (stripped - 0.04% (2)
as much as - 0.04% (2)
down version) inside - 0.04% (2)
views. if you - 0.04% (2)
times have changed, - 0.04% (2)
an instance of - 0.04% (2)
27, 2013 by - 0.04% (2)
static properties and - 0.04% (2)
static is used - 0.04% (2)
and if you - 0.04% (2)
php, programming tagged - 0.04% (2)
lifecycle of a - 0.04% (2)
will be the - 0.04% (2)
read on to - 0.04% (2)
tagged with: laravel, - 0.04% (2)
file uploads in - 0.04% (2)
array or stdclass - 0.04% (2)
or stdclass object - 0.04% (2)
sri lanka, i - 0.04% (2)
and you can - 0.04% (2)
company like uber - 0.04% (2)
coming to sri - 0.04% (2)
a matter of - 0.04% (2)
my return ride - 0.04% (2)
good for the - 0.04% (2)
and i have - 0.04% (2)
cloud object storage - 0.04% (2)
not sure if - 0.04% (2)
both of the - 0.04% (2)
you try to - 0.04% (2)
uber coming to - 0.04% (2)
to make sure - 0.04% (2)
and our application - 0.04% (2)
always better to - 0.04% (2)
vendor api, we - 0.04% (2)
sort of data - 0.04% (2)
data transfer objects - 0.04% (2)
and if it - 0.04% (2)
in a separate - 0.04% (2)
is to build - 0.04% (2)
of the app - 0.04% (2)
the end of - 0.04% (2)
make sure to - 0.04% (2)
and focus on - 0.04% (2)
undefined index errors - 0.04% (2)

Here you can find chart of all your popular one, two and three word phrases. Google and others search engines means your page is about words you use frequently.

Copyright © 2015-2016 hupso.pl. All rights reserved. FB | +G | Twitter

Hupso.pl jest serwisem internetowym, w którym jednym kliknieciem możesz szybko i łatwo sprawdź stronę www pod kątem SEO. Oferujemy darmowe pozycjonowanie stron internetowych oraz wycena domen i stron internetowych. Prowadzimy ranking polskich stron internetowych oraz ranking stron alexa.