Showing posts with label performance. Show all posts
Showing posts with label performance. Show all posts

Monday, August 01, 2011

Google Website Optimization Service

Google has launched a new page speed service to automatically speed up web pages during loading. The page service sits between browser and web servers; it fetches content from the web server, optimizes the code of the web pages using Google expert techniques and tricks to improve performance. End users will see no impact other than faster web experience.

In future, this is going to be a big relief to the developers overstressed to optimize website performance, as well as to the small businesses running simpler sites to achieve faster delivery cycles and more budgets for development by cutting the cost for advance level web site optimization and tuning. However, for large websites running enterprise applications; it won’t be rational to claim that this service will sufficient enough to take care of speed issues.

Google has launched a test page to compare site speed across different browsing platforms and environments. Currently it offers to selected number of site owners, and expected to be free for all in future.

Read More about Website Optimization Techniques

Monday, June 20, 2011

Faster Web Experience

Websites response time and browsers speed to render pages quickly has been quite a challenge. Client fidelity to stick to a site during the page load is not more than a few seconds. If a web page takes too long to open, the potential customer would steer away. Every website has a goal to keep the user for more and more interaction. Companies allocate huge budget for website performance and we continue to experience having a new version of our favorite browsers claiming more optimization and fast surfing experience.

Google designed a protocol known as SPDY back in 2009, to optimize websites for fast loading of web pages. This protocol claims to radically speed up page rendering by tweaking how browsers interact with the servers. This was tested and deployed internally by Google in support of its Chrome OS and its recent Chromebook which only comes with Chrome as browser. Google claims that Chromebooks are built and optimized for the web, as the company has a vision that most of the computing time spent is on the web. This protocol however has not commercially existed outside Google.

For the first time, Strangeloop which deals in website optimization has commercially added SPDY into the features of its product, Site Optimizer. The product sits in between a website and the clients; and tweaks the server code to render pages efficiently without requiring of changing server side code or adding more servers for better performance.

It’s worth noting that Google Chrome is the only SPDY enabled browser; other browsers currently won’t be able to make use of it. Given the potential of dramatically increasing website response time, this protocol is also expected to be introduced in other browsers as well as in mobile based web browsers for faster web experience.

Read More!

Monday, February 09, 2009

OLD newid VS newsequentialid

SqlServer 2005 has introduced newsequentialid to avoid page-splits by producing bigger value than the last generated value against its predecessor newid which generates random values causing I/O issues.
That also helps in replication performance.

Details below:

Sunday, November 09, 2008

Stored Procedures Best Practices (learn from the Best)

Instead of adding more to already overloaded junk on the web regarding SQL Stored Procedure Best Practices, let's learn from those who are the best! :)

Wednesday, October 22, 2008

Avoiding Cursors and Loops for Append Operations

Most of the times, to do basic append operations in SQL; the very first thing comes in mind is the CURSOR and a LOOP.
For example, if I want to print a comma seperated list of columns in any given table; i would quickly think of a cursor with a loop assigning the comma seperated column list to a variable.

BUT, there is pretty simpler, smarter, and quicker work around to do appends like this:

TRADITIONAL CURSOR WITH WHILE LOOP SOLUTION FOR APPENDS:

create table #mytable (column_a varchar(2), column_b varchar(2), column_c varchar(3))
declare cursor_mytable cursor
for select c.name
from tempdb.dbo.sysobjects o
join tempdb.dbo.syscolumns c on c.id=o.id
where o.id=object_id('tempdb.dbo.#mytable')
and o.type = 'U'
declare @v varchar(100), @v2 varchar(800)
set @v2 =''
open cursor_mytable
fetch cursor_mytable into @v
while @@fetch_status = 0
begin
if @v2 =''
begin
set @v2 =@v
end
else
begin
set @v2=@v2+','+@v
end
fetch cursor_mytable into @v
end
close cursor_mytable
deallocate cursor_mytable
drop table #mytable
select @v2
SIMPLE CURSOR & LOOPLESS, YET SMARTER SOLUTION FOR APPENDS:

create table #mytable (column_a varchar(2), column_b varchar(2), column_c varchar(3))
declare @v varchar(100), @v2 varchar(800), @tbl sysname
select @v2 = '', @v = ''
select @v = c.name , @v2 = @v2+','+@v
from tempdb.dbo.syscolumns c
INNER JOIN tempdb.dbo.sysobjects o on c.id = o.id
where o.id=object_id('tempdb.dbo.#mytable')
and o.type = 'U'
drop table #mytable
select substring(@v2,2,len(@v2))

The output of both code snippets above is the same but simplicity is obvious in the latter one!

Friday, April 18, 2008

RAM and procedure cache issue resolved in SQL 2008 (Thanx to Adam Mechanic) :)

lack of RAM control and inefficiencies in SQL Procedure Cache very well addressed and escallated by the SQL Guru!
Microsoft introducing Resource Governer in sql 2008 sates that you can control the amount of RAM Proc Cache can acquire by defining resource pools. Details below:

http://sqlblog.com/blogs/adam_machanic/archive/2008/04/15/sql-server-procedure-cache-more-relief-on-the-way.aspx

https://connect.microsoft.com/SQLServer/feedback/ViewFeedback.aspx?FeedbackID=293188