<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title></title>
	<atom:link href="http://www.websoldier.net/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.websoldier.net</link>
	<description></description>
	<lastBuildDate>Mon, 27 Feb 2012 22:01:33 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1</generator>
		<item>
		<title>Symfony Front Controller&#8217;s Job In detail</title>
		<link>http://www.websoldier.net/2012/02/28/symfony-front-controllers-job-in-detail/</link>
		<comments>http://www.websoldier.net/2012/02/28/symfony-front-controllers-job-in-detail/#comments</comments>
		<pubDate>Mon, 27 Feb 2012 22:01:33 +0000</pubDate>
		<dc:creator>fmo</dc:creator>
				<category><![CDATA[Diğer]]></category>

		<guid isPermaLink="false">http://www.websoldier.net/?p=529</guid>
		<description><![CDATA[1. Define the core constants. 2. Locate the symfony libraries. 3. Load and initiate the core framework classes. 4. Load the configuration. 5. Decode the request URL to determine the action to execute and the request parameters. 6. If the action does not exist, redirect to the 404 error action. 7. Activate filters (for instance, [...]]]></description>
			<content:encoded><![CDATA[<div class="TweetButton_button" style="float: right; margin-left: 10px;;height:20px;margin-bottom:5px;"><a href="http://twitter.com/share data-url="http://www.websoldier.net/2012/02/28/symfony-front-controllers-job-in-detail/" data-text="Symfony Front Controller&#038;%238217;s Job In detail"data-count="horizontal" data-lang="en""><img src="http://www.websoldier.net/wp-content/plugins/tweetbutton-for-wordpress/images/tweet.png" style="border:none" /></a></div>
<div class='kouguu_fb_like_button'><iframe src="http://www.facebook.com/plugins/like.php?href=http://www.websoldier.net/2012/02/28/symfony-front-controllers-job-in-detail/&#038;layout=button_count&#038;show_faces=false&#038;width=450&#038;height=25&#038;action=like&#038;colorscheme=light&#038;" scrolling="no" frameborder="0" allowTransparency="true" style="border:none; overflow:hidden; width:450px; height:25px;"></iframe></div>
<p>1. Define the core constants.</p>
<p>2. Locate the symfony libraries.</p>
<p>3. Load and initiate the core framework classes.</p>
<p>4. Load the configuration.</p>
<p>5. Decode the request URL to determine the action to execute and the request parameters.</p>
<p>6. If the action does not exist, redirect to the 404 error action.</p>
<p>7. Activate filters (for instance, if the request needs authentication).</p>
<p>8. Execute the filters, first pass.</p>
<p>9. Execute the action and render the view.</p>
<p>10. Execute the filters, second pass.</p>
<p>11. Output the response</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.websoldier.net/2012/02/28/symfony-front-controllers-job-in-detail/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Replication info files</title>
		<link>http://www.websoldier.net/2012/01/11/replication-info-files/</link>
		<comments>http://www.websoldier.net/2012/01/11/replication-info-files/#comments</comments>
		<pubDate>Wed, 11 Jan 2012 14:33:35 +0000</pubDate>
		<dc:creator>fmo</dc:creator>
				<category><![CDATA[Diğer]]></category>
		<category><![CDATA[replication]]></category>

		<guid isPermaLink="false">http://www.websoldier.net/?p=527</guid>
		<description><![CDATA[When running replication, two new files appear in your data directory: master.info and relay-log.info. MySQL uses these files to save information about your replication state, and they’re used when MySQL starts up, if they’re available. Caution MySQL considers the information contained in the master.info and relay-log.info filebefore looking for settings in the configuration files. This [...]]]></description>
			<content:encoded><![CDATA[<div class="TweetButton_button" style="float: right; margin-left: 10px;;height:20px;margin-bottom:5px;"><a href="http://twitter.com/share data-url="http://www.websoldier.net/2012/01/11/replication-info-files/" data-text="Replication info files"data-count="horizontal" data-lang="en" data-related="replication""><img src="http://www.websoldier.net/wp-content/plugins/tweetbutton-for-wordpress/images/tweet.png" style="border:none" /></a></div>
<div class='kouguu_fb_like_button'><iframe src="http://www.facebook.com/plugins/like.php?href=http://www.websoldier.net/2012/01/11/replication-info-files/&#038;layout=button_count&#038;show_faces=false&#038;width=450&#038;height=25&#038;action=like&#038;colorscheme=light&#038;" scrolling="no" frameborder="0" allowTransparency="true" style="border:none; overflow:hidden; width:450px; height:25px;"></iframe></div>
<p>When running replication, two new files appear in your data directory: <strong>master.info</strong> and <strong>relay-log.info</strong>. MySQL uses these files to save information about your replication state, and they’re used when MySQL starts up, if they’re available.</p>
<p><em>Caution MySQL considers the information contained in the master.info and relay-log.info filebefore looking for settings in the configuration files. This means that changes in your my.cnf file may beignored, if the information is stored in the info files.</em></p>
<p>Both of these files provide information about the configuration and status of your replica-tion, but shouldn’t be used as configuration files to make changes. The primary purpose forthese files is to keep state information between database restarts, and for database backups.The slave threads control both of these files, and you should only use them for information.You can make changes to these files with the CHANGE MASTER command, which is discussed inmore detail in the section “CHANGE MASTER.”</p>
]]></content:encoded>
			<wfw:commentRss>http://www.websoldier.net/2012/01/11/replication-info-files/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Replication Process</title>
		<link>http://www.websoldier.net/2012/01/06/replication-process/</link>
		<comments>http://www.websoldier.net/2012/01/06/replication-process/#comments</comments>
		<pubDate>Fri, 06 Jan 2012 15:47:05 +0000</pubDate>
		<dc:creator>fmo</dc:creator>
				<category><![CDATA[Diğer]]></category>
		<category><![CDATA[replication process]]></category>

		<guid isPermaLink="false">http://www.websoldier.net/?p=524</guid>
		<description><![CDATA[Now that you’re familiar with the binary log, and we’ve hinted at how the binary log might beused in replication, let’s look at the steps that happen when data is replicated to another server: INSERT, UPDATE, DELETE or some other data-changing query is issued to the masterdatabase. The query is parsed, executed, and written to [...]]]></description>
			<content:encoded><![CDATA[<div class="TweetButton_button" style="float: right; margin-left: 10px;;height:20px;margin-bottom:5px;"><a href="http://twitter.com/share data-url="http://www.websoldier.net/2012/01/06/replication-process/" data-text="Replication Process"data-count="horizontal" data-lang="en" data-related="replication+process""><img src="http://www.websoldier.net/wp-content/plugins/tweetbutton-for-wordpress/images/tweet.png" style="border:none" /></a></div>
<div class='kouguu_fb_like_button'><iframe src="http://www.facebook.com/plugins/like.php?href=http://www.websoldier.net/2012/01/06/replication-process/&#038;layout=button_count&#038;show_faces=false&#038;width=450&#038;height=25&#038;action=like&#038;colorscheme=light&#038;" scrolling="no" frameborder="0" allowTransparency="true" style="border:none; overflow:hidden; width:450px; height:25px;"></iframe></div>
<p>Now that you’re familiar with the binary log, and we’ve hinted at how the binary log might beused in replication, let’s look at the steps that happen when data is replicated to another server:</p>
<ol>
<li>INSERT, UPDATE, DELETE or some other data-changing query is issued to the masterdatabase.</li>
<li>The query is parsed, executed, and written to the binary log on the master.</li>
<li>The I/O thread on the slave asks for new queries from the I/O thread on the master,and pulls anything new from the binary log on the master into a log on the slave calledthe relay log.</li>
<li>A processing thread on the slave reads the relay log and executes the query.</li>
</ol>
<p>The simple explanation is that for any data change on the master, an entry is made intothe binary log. That statement is copied to the slave and executed there as well, making theexact change to the slave as was made on the master and thus keeping the data in sync.</p>
<p>We hinted at different threads in these four steps. Running a replication slave requiresthree threads, in addition to those already used to keep your database’s non-replication-related features running. Two threads run on the slave, the first to communicate with themaster for entries in the master’s binary log and to pull the statements onto the slavemachine. The second slave thread reads the queries in the relay log (which were pulled fromthe master) and processes them. The third thread runs on the master and is responsible forcommunicating changes in the master’s binary log. If you have multiple slaves pointing at asingle master, the master will run a separate thread to communicate with each of the slaves.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.websoldier.net/2012/01/06/replication-process/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Facebook Timeline Denormalization Process</title>
		<link>http://www.websoldier.net/2012/01/06/facebook-timeline-denormalization-process/</link>
		<comments>http://www.websoldier.net/2012/01/06/facebook-timeline-denormalization-process/#comments</comments>
		<pubDate>Fri, 06 Jan 2012 10:02:36 +0000</pubDate>
		<dc:creator>fmo</dc:creator>
				<category><![CDATA[Diğer]]></category>
		<category><![CDATA[facebook]]></category>
		<category><![CDATA[timeline]]></category>

		<guid isPermaLink="false">http://www.websoldier.net/?p=520</guid>
		<description><![CDATA[Some of our specific challenges of the denormalization process were: 1. Dozens of legacy data formats that evolved over years. Peter Ondruška, a Facebook summer intern, defined a custom language to concisely express our data format conversion rules and wrote a compiler to turn this into runnable PHP. Three “data archeologists” wrote the conversion rules. 2. Non-recent activity [...]]]></description>
			<content:encoded><![CDATA[<div class="TweetButton_button" style="float: right; margin-left: 10px;;height:20px;margin-bottom:5px;"><a href="http://twitter.com/share data-url="http://www.websoldier.net/2012/01/06/facebook-timeline-denormalization-process/" data-text="Facebook Timeline Denormalization Process"data-count="horizontal" data-lang="en" data-related="facebook,timeline""><img src="http://www.websoldier.net/wp-content/plugins/tweetbutton-for-wordpress/images/tweet.png" style="border:none" /></a></div>
<div class='kouguu_fb_like_button'><iframe src="http://www.facebook.com/plugins/like.php?href=http://www.websoldier.net/2012/01/06/facebook-timeline-denormalization-process/&#038;layout=button_count&#038;show_faces=false&#038;width=450&#038;height=25&#038;action=like&#038;colorscheme=light&#038;" scrolling="no" frameborder="0" allowTransparency="true" style="border:none; overflow:hidden; width:450px; height:25px;"></iframe></div>
<p>Some of our specific challenges of the denormalization process were:</p>
<p>1. Dozens of legacy data formats that evolved over years. <a href="https://www.facebook.com/ondruska.peter">Peter Ondruška</a>, a Facebook summer intern, defined a custom language to concisely express our data format conversion rules and wrote a compiler to turn this into runnable PHP. Three “data archeologists” wrote the conversion rules.</p>
<p>2. Non-recent activity data had been moved to slow network storage. We hacked a read-only build of MySQL and deployed hundreds of servers to exert maximum IO pressure and copy this data out in weeks instead of months.</p>
<p>3. Massive join queries that did tons of random IO. We consolidated join tables into a tier of flash-only databases. Traditionally PHP can perform database queries on only one server at a time, so we wrote a parallelizing query proxy that allowed us to query the entire join tier in parallel.</p>
<p>4. Future-proofing the data schema. We adopted a data model that’s compatible with Multifeed. It’s more flexible and provides more semantic context around data with the added benefit of allowing more code reuse.</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.websoldier.net/2012/01/06/facebook-timeline-denormalization-process/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Yahoo&#8217;s Monthly Visit Number</title>
		<link>http://www.websoldier.net/2011/12/30/yahoos-daily-visit-number/</link>
		<comments>http://www.websoldier.net/2011/12/30/yahoos-daily-visit-number/#comments</comments>
		<pubDate>Fri, 30 Dec 2011 13:18:30 +0000</pubDate>
		<dc:creator>fmo</dc:creator>
				<category><![CDATA[Diğer]]></category>
		<category><![CDATA[stats]]></category>
		<category><![CDATA[Yahoo]]></category>

		<guid isPermaLink="false">http://www.websoldier.net/?p=512</guid>
		<description><![CDATA[Despite the fact that it has become a laughingstock and cautionary tale among the digital elite, Yahoo&#8217;s properties are still visited by some 700 million normal people a month. 700 million! This humongous audience is attracted by several things: Yahoo Mail (still one of the leading mail platforms worldwide) Yahoo content (Finance, Sports, Entertainment, videos, etc.) [...]]]></description>
			<content:encoded><![CDATA[<div class="TweetButton_button" style="float: right; margin-left: 10px;;height:20px;margin-bottom:5px;"><a href="http://twitter.com/share data-url="http://www.websoldier.net/2011/12/30/yahoos-daily-visit-number/" data-text="Yahoo&#038;%238217;s Monthly Visit Number"data-count="horizontal" data-lang="en" data-related="stats,Yahoo""><img src="http://www.websoldier.net/wp-content/plugins/tweetbutton-for-wordpress/images/tweet.png" style="border:none" /></a></div>
<div class='kouguu_fb_like_button'><iframe src="http://www.facebook.com/plugins/like.php?href=http://www.websoldier.net/2011/12/30/yahoos-daily-visit-number/&#038;layout=button_count&#038;show_faces=false&#038;width=450&#038;height=25&#038;action=like&#038;colorscheme=light&#038;" scrolling="no" frameborder="0" allowTransparency="true" style="border:none; overflow:hidden; width:450px; height:25px;"></iframe></div>
<p>Despite the fact that it has become a laughingstock and cautionary tale among the digital elite, Yahoo&#8217;s properties are still visited by some 700 million normal people a month.</p>
<p>700 million!</p>
<p>This humongous audience is attracted by several things:</p>
<ul>
<li>Yahoo Mail (still one of the leading mail platforms worldwide)</li>
<li>Yahoo content (Finance, Sports, Entertainment, <a href="http://www.businessinsider.com/blackboard/">videos</a>, etc.)</li>
<li>Yahoo&#8217;s brand</li>
<li>Yahoo&#8217;s &#8220;products&#8221;</li>
</ul>
<p>And here&#8217;s something else Yahoo has.</p>
<p><em>Revenue</em> and <em>cash flow</em>.</p>
<p>Even in its current deflated state, Yahoo still generates $1.6 billion of revenue per quarter ($6 billion per year) and $250 million of free cash flow ($1 billion a year).</p>
]]></content:encoded>
			<wfw:commentRss>http://www.websoldier.net/2011/12/30/yahoos-daily-visit-number/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

