门户网站负载均衡技术的六大新挑战
摘要:得上大学时,我和好友老郭讨论最多的话题便是:“像新浪这样的网站是如何支撑如此巨大的访问量?”也曾通过各种手段,猜测新浪服务器的数量、操作系统和应用软件的版本……一切都是那么神秘。毕业那年,有幸加入新浪,终于一点点地揭开了这层神秘的面纱。2004年某厂商设备介绍会上,我初次接触到了负载均衡技术。之后的几年时间,可以说是负载均衡设备在网站推广的黄金爆发期。 发展到今天,一方面硬件设备依然保持了强劲的实力,另一方面以LVS、Haproxy为代表的软件负载均衡也异军突起,被人们所认可。在新浪,软、硬件负载均衡并存的格局已有三年多的历史了,除了既往积累的经验外,近一年来,我们也看到了负载均衡所面临的一.
阅读全文
posted @
2012-12-28 10:07
laozhu1124
阅读(397)
推荐(1) 编辑
百度之星试题每周一练
摘要:百度之星,是全球最大的中文搜索引擎,百度公司面向中国高校学生和编程爱好者所举办的高水平的程序设计大赛。他所考试的题目,全部都是算法的题目。鄙人虽然是一个.net程序员,在工作之余,喜爱算法。 这个问题非常的巧,故而分享给大家,我想到一种超简单方法,提供大家,希望对大家起了一个开阔思路的作用。首先,题意是这样的:八方块移动游戏要求从一个含 8 个数字 (用 1-8 表示) 的方块以及一个空格方块 (用 0 表示) 的 3x3 矩阵的起始状态开始,不断移动该空格方块以使其和相邻的方块互换,直至达到所定义的目标状态。空格方块在中间位置时有上、下、左、右 4 个方向可移动,在四个角落上有 2 个方向可
阅读全文
posted @
2012-12-19 10:40
laozhu1124
阅读(2482)
推荐(1) 编辑
手把手玩转win8开发系列课程(28)
摘要:这节,我们讨论两个主题 ①打破视图 ②使用瓦片和徽章来更好的用户体验如果你把断裂视图呈现给用户,你可以恢复到一个更广泛的布局时,与用户交互的应用在某些方面。为了证明这个道理, 我添加一个按钮到viewPage页面上。下列的源代码所示:1 <StackPanel x:Name="TopRight" Background="#70a524" Grid.Column="1" 2 Grid.Row="0">3 <!--文本框-->4 <TextBlock x:Name="TopRig
阅读全文
posted @
2012-12-18 12:52
laozhu1124
阅读(1713)
推荐(1) 编辑
手把手玩转win8开发系列课程(27)
摘要:这节,我们讨论两个主题 ①打破视图 ②使用瓦片和徽章来更好的用户体验如果你把断裂视图呈现给用户,你可以恢复到一个更广泛的布局时,与用户交互的应用在某些方面。为了证明这个道理, 我添加一个按钮到viewPage页面上。下列的源代码所示:1 <StackPanel x:Name="TopRight" Background="#70a524" Grid.Column="1" 2 Grid.Row="0">3 <!--文本框-->4 <TextBlock x:Name="TopRig
阅读全文
posted @
2012-12-18 12:38
laozhu1124
阅读(1151)
推荐(1) 编辑
WP7和Android控件对照表
摘要:对于WP7和Android平台相关的UI控件对比来看,WP7控件的数量整体比Android少了不少,同时在基本的控件上Windows Phone还需要Silverlight Toolkit来实现,当然微软这样做也是让更多的控件得到社区支持快速的更新,而不打包在SDK中等待漫长的改进。下面就以WP7和Android两个平台做简单对照 (前者为WP7后者为Android):ListBox - ListView 整体而言,WP7平添的ListBox控件的更新机制依赖于INotifyCollectionChanged接口,实现ObservableCollection即可,而Android平台的Li..
阅读全文
posted @
2012-12-17 14:37
laozhu1124
阅读(888)
推荐(0) 编辑
手把手玩转win8开发系列课程(26)
摘要:这节我们两个议题①在源代码中改变平铺②在xaml中改变平铺样式(1)在源代码中改变平铺这个平铺系统中最核心的是windows中的ViewStateChanged事件。为了处理事件,你可以重新配置的你的程序,来生成这个事件。下列是源代码所示:View Codeusing Windows.UI.ViewManagement;using Windows.UI.Xaml;using Windows.UI.Xaml.Controls;namespace MetroGrocer.Pages {//DetailPage类 public sealed partial class DetailPage : Pa
阅读全文
posted @
2012-12-17 11:26
laozhu1124
阅读(1250)
推荐(2) 编辑
.net你不行——是你的父亲把你封装的太死,还是你的子孙们太懒,未把你发扬光大。
摘要:.net,是伟大比尔提出来的,微软公司于2000年彻底对外发布, .NET就是微软的用来实现XML,Web Services,SOA(面向服务的体系结构service-oriented architecture)和敏捷性的技术。其初衷是针对于互联网领域的一门技术,微软公司推出他的目的就是想用其终结java在internet方面一支独大的局面,最终干掉java。但,十几年过去了。微软这以宏伟的目标,终究没有实现。在传统的c/s架构中,一般你的老大哥C++针对你有得天独厚的优势——执行效率高,依然是大公司的首选。即使,别人要用,那也是一些不入流的小公司做一些小项目。在web端,你有了一个一点点的.
阅读全文
posted @
2012-12-12 12:40
laozhu1124
阅读(4814)
推荐(6) 编辑
百度之星试题每周一练
摘要:百度之星,是全球最大的中文搜索引擎,百度公司面向中国高校学生和编程爱好者所举办的高水平的程序设计大赛。他所考试的题目,全部都是算法的题目。鄙人虽然是一个.net程序员,在工作之余,喜爱算法。 这个问题与现实的需求蛮贴近,故而分享给大家,我想到两种方法,提供大家,希望对大家起了一个开阔思路的作用。首先,题意是这样的: 1 饭团的烦恼 2 3 “午餐饭团“是百度内部参与人数最多的民间组织。 4 5 同一个部门的,同一间大学的,同一年出生的,用同一种型号电脑的,员工们总是以各种理由,各种借口组织各种长久的,临时的饭团。 6 7 参加饭团,不仅可以以优惠的价格尝到更加丰富的菜...
阅读全文
posted @
2012-12-11 11:03
laozhu1124
阅读(2507)
推荐(0) 编辑
手把手玩转win8开发系列课程(25)
摘要:这章,我们来探讨一下metro app一个特别的特点——瓦片在这章中,我们来探讨了微软为了更好的满足用户体验所提供的两大特征。第一大特征就是允许了metro app填满和折断。以此于他能够紧挨着出现了。我就告诉你怎么自由的停靠app的位置,满足他的布局方式。第二点,就是一个metro app与众不同的布局的方式瓦片。这是windows的经典菜单的极大的替代品。这简单的实现这个方式, 就是放几个静态的按钮能解决这个问题。但这需要捕捉这个程序的状态了。这不好,在这章中,你讲看到如何动态的创建title 、下图展示本章的内容提要:①彻底支持metro 布局就目前而言,这个app程序能够充分整个屏幕上
阅读全文
posted @
2012-12-10 17:49
laozhu1124
阅读(1153)
推荐(0) 编辑
手把手玩转win8开发系列课程(24)
摘要:我们这节有两个议题①创建另外的视图②测试导航程序(1)创建另外的视图现在,我需要的做的事情就是添加另一个页面来完善这个程序。这个页面名字叫做DetailPage,他的源代码如图所示: 1 <Page 2 x:Class="MetroGrocer.Pages.DetailPage" 3 xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 4 xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 5
阅读全文
posted @
2012-12-09 10:01
laozhu1124
阅读(1052)
推荐(0) 编辑
看算法导论有感(1)——谈谈算法的五性对用户体验的影响
摘要:做程序的人,都知道了算法的5性——可行性,健壮性,有穷性,高效性,可读性。这15个字谁都会说了,但是,你是否真正的思考过这个对当今程序界最最重要的用户体验的思考。过去,我也没多做思考,但是,看了mit的算法导论公开课,我却是觉得一个好的算法, 确实严格遵从算法算法五性。①可行性——算法原则上能够精确地运行,而且人们用笔和纸做有限次运算后即可完成。算法肯定要可行的,不可行的话,是一坨shit,一般可行性是与硬件息息相关。比如,10年前,你要先像现在的搜索引擎一样能够做视搜索,做各种各样的算法搜索。那时候,不是算法可行的,而是硬件而达不到要求。再比如所说,我们经常写出许多算法都是就会出现这个问题—
阅读全文
posted @
2012-12-08 17:36
laozhu1124
阅读(2238)
推荐(1) 编辑
手把手玩转win8开发系列课程(23)
摘要:这节,我们来讨论①像程序中添加最复杂的flyout控件②创建包装类(1)像程序中添加最复杂的flyout控件手把手玩转win8开发系列课程(21)的时候了,我们已经把一个简单的FlyOut的文件添加到了项目中,我们觉得还不够,因此了,上节我们创建了一个复杂的控件。于是,我们来将其添加到项目中去,下列是添加这个控件的源码:1 <!--flyouts 命名空间 指向MetroGrocer.Flyouts-->2 <flyouts:HomeZipCodeFlyout x:Name="HomeZipFlyout"/>3 <flyouts:AddItem
阅读全文
posted @
2012-12-08 11:06
laozhu1124
阅读(1295)
推荐(0) 编辑
手把手玩转win8开发系列课程(22)
摘要:今天的议程,有三个①展示弹出对话框②创建更复杂的控件③并为复杂的控件赋值(1)展示弹出对话框上节,我们已经写好了这个对话框,并且已经引入了项目中去了,那我们就有必要展示了。当用户点击了这个按钮以后,这个用户控件就会出现。下列的源代码就是实现了这个功能: 1 private void AppBarButtonClick(object sender, RoutedEventArgs e) { 2 //获取相应的源对象 3 if (e.OriginalSource == AppBarDoneButton 4 && viewModel.SelectedItemIndex > -1
阅读全文
posted @
2012-12-07 11:01
laozhu1124
阅读(1228)
推荐(0) 编辑
手把手玩转win8开发系列课程(21)
摘要:这节,有三个议程①定位控件②显示用户控件③将用户控件添加到项目中(1)定位控件Metro布局控件没有提供了一种简单相对定位的布局方式,因此,在项目中你需要做一下灵活的处理了。下面就展示了我在Flyouts文件夹下写的FlyoutHelper类的情况,他定义了一个ShowRelativeToAppBar的方法。这个方法的职责是十分单一的,就是讲这个 用户控件定位到appBar Button控件旁边了。为了实现这样的效果,我们所需要的是一个popup control,一点击的这个按钮,就出现上述弹出用户控件的情况,尽管,这个方法看起来并不是那么的好了,但这也是我能解决这个问题想到的唯一的解决方法。
阅读全文
posted @
2012-12-06 10:35
laozhu1124
阅读(1439)
推荐(1) 编辑
手把手玩转win8开发系列课程(20)
摘要:这节,我们的任务很简单。使其flyOut用户能够完成一定动作。为用户控件编码上节,我说到过,用户控件是由源代码文件的。所以, HomeZipCodeFlyout这个用户控件源代码如下: 1 using Windows.UI.Xaml; 2 using Windows.UI.Xaml.Controls; 3 namespace MetroGrocer.Flyouts { 4 public sealed partial class 5 HomeZipCodeFlyout : UserControl { 6 //HomeZip的构造函数 7 //进行初始化 8 publ...
阅读全文
posted @
2012-12-05 22:11
laozhu1124
阅读(1104)
推荐(0) 编辑
手把手玩转win8开发系列课程(19)
摘要:这节,我们来建立一个用户控件瞧一瞧建立用户控件以前,我都说过这么个事情,如果把所有的文件写在一个xaml文件中,这样一个页面就会变得特别的冗长。所以,我更加的喜欢吧flyouts定义成用户控件。注意用户控也是包含一个xmal设计文件和一个源代码文件。(我这里不会重点深入xaml的实质,但这部分的源码我会在这里展示出来)。为了更好的管理,我在项目中建立了一个相应的文件夹叫做Flyouts的文件夹,并且使用原始的用户控件的模板创建一个新用户控件叫做HomeZipCodeFlyout,相应的源代码如图所示: 1 <UserControl 2 x:Class="MetroGrocer.
阅读全文
posted @
2012-12-05 19:03
laozhu1124
阅读(1232)
推荐(0) 编辑
手把手玩转win8开发系列课程(18)
摘要:这节,加入弹出对话框弹出对话框这个appBar button能起作用类额 ,他处理的源代码是直接放在Click event里面中。大多数的buttons操作更需要一些额外的用户体验,因此我们使用flyOut控件。当用户点击了appBar按钮以后,这个弹出窗口就会出现,给予用户一定提示,当用户再度点击这个控件以后,这个东西就会消失。这有点像什么——像winFrom弹出的对话框,但他不是一个窗口,或者一个页面,他只是依附于这个窗口的某个层。这样弹出的窗口的,实现js中操作是使用了flyOut控件,在xaml与C#实现一模一样的效果,需要Popup控件,并且在相应的cs文件中进行了编码使其Popup
阅读全文
posted @
2012-12-05 16:02
laozhu1124
阅读(1292)
推荐(0) 编辑
手把手玩转win8开发系列课程(17)
摘要:上节,已经为appBar换上皮肤了,显然不够。我这里要使她有一定的功能。实现appBar Button的功能现在 app Bar上面的控件只是像一些梨一样“好看不好吃”,我必须实现他的功能,因此,我实现功能的源代码就如下所示:下面,我要做的事情,就是实现这样一个功能——当用户点击此按钮的时候,要界面上某一项从数组中移去,这样才能像普通购物车一样用户才能对商品自由的选择。下面就是实现这个功能的源代码: 1 using MetroGrocer.Data; 2 using Windows.UI.Xaml; 3 using Windows.UI.Xaml.Controls; 4 using Windo
阅读全文
posted @
2012-12-05 13:02
laozhu1124
阅读(1291)
推荐(0) 编辑
手把手玩转win8开发系列课程(16)
摘要:这节,很简单,创建用户app button的样式创建 app button自定义样式上节,我们说到这节我们要创建用户的app button的自定义样式,这节为自定义样式赋值程序中为了使你的程序与众不同,就是应当定义你的appBar buttons的样式并为其赋值,下面的源代码就是我在项目中使用自定义样式了。1 <Style x:Key="StoresAppBarButton" TargetType="Button"2 BasedOn="{StaticResource AppBarButtonStyle}">3 <!-
阅读全文
posted @
2012-12-05 10:01
laozhu1124
阅读(1238)
推荐(0) 编辑
手把手玩转win8开发系列课程(15)
摘要:这节,给appbar添加button样式,使其外表样式更加的丰满。添加APPBarButton样式standardStyle页面中包含了appBar的Button的样式。其样式的xaml的源代码如下:1 <!--AppBar的样式-->2 <Style x:Key="AddAppBarButtonStyle" TargetType="Button"3 BasedOn="{StaticResource AppBarButtonStyle}">4 <!--AutomationId 动画id-->5 &l
阅读全文
posted @
2012-12-04 20:56
laozhu1124
阅读(1596)
推荐(0) 编辑
手把手玩转win8开发系列课程(14)
摘要:这节的议程就是——添加appbarappbar是出现在哪儿了,出现在屏幕的底部。他能使用户能用手势或者使用鼠标操作程序。metro UI 重点是在主要的控件使用许多控件,使其用户使用win8电脑更加的方便。而appBar使其用户体验更好。在这节中,我将告诉你如何定义和填充app Bar。在界面的顶部有一个类似的控件,叫做navbar。这使其程序中,能够互相导航。 至于如何创建 使用navbar ,我将在后续文章详细的介绍。定义一个appBar我将用最简单的方法创建一个AppBar.下面源代码就是创建一个appBar: 1 <Page 2 x:Class="MetroGrocer
阅读全文
posted @
2012-12-04 17:53
laozhu1124
阅读(1300)
推荐(0) 编辑
手把手玩转win8开发系列课程(13)
摘要:操作条,进度条和导航(1)——概要在这章中,我将会是这这个项目具有更好的metro风格的用户体验。这个appba控件为用户输入更加的方便,这个navbar为用户导航操作更加的便捷。我还介绍了如何创建弹出式窗口,用于捕获来自用户提示的信息,通常,这是对appbar的交互以后的相应。下图展示这章的概要:如果你想有更好的学习的效果的话,如果你按照的前面的文章已经做了的话,请在模拟器中卸载,相应的源代码可以去Apress.com来下载完整的源代码,再在模拟器中通过不同路径来安装。哝,这章的基本概要已经ok了,期待我下面的文章吧。
阅读全文
posted @
2012-12-04 13:47
laozhu1124
阅读(1099)
推荐(0) 编辑
手把手玩转win8开发系列课程(12)
摘要:上节,说到怎么插入相应的页面。这节,真真正正来插入页面看看。插入页面很显然,只定义一个ItemDetail页面是远远不够的。为了完成这项用户选择某项来展示不同信息的功能,我需要写许多的代码。下面就展示了我所写的源代码: 1 using System; 2 using MetroGrocer.Data; 3 using Windows.UI.Xaml; 4 using Windows.UI.Xaml.Controls; 5 using Windows.UI.Xaml.Navigation; 6 namespace MetroGrocer.Pages { 7 public sealed par..
阅读全文
posted @
2012-12-04 10:03
laozhu1124
阅读(1400)
推荐(2) 编辑
由一道百度之星题目写起 谈谈编程中的分类的思想
摘要:百度之星,是全球最大的中文搜索引擎,百度公司面向中国高校学生和编程爱好者所举办的高水平的程序设计大赛。他所考试的题目,全部都是算法的题目。鄙人虽然是一个非主流的.net程序员,在工作之余,喜爱算法。 我觉得这个题目有点意思,故而分享给大家,我想到两种方法,提供大家,希望对大家起了一个开阔思路的作用。 更重要想谈一谈算法中的分治算法。首先,题目是那样的:请编写程序,找出下面“输入数据及格式”中所描述的输入数据文件中最大重叠区间的大小。对一个正整数n,如果n在数据文件中某行的两个正整数(假设为A和B)之间,即A<=n<=B或A>=n>=B,则n属于该行;如果n同时属于行i和
阅读全文
posted @
2012-12-03 20:14
laozhu1124
阅读(1451)
推荐(0) 编辑
手把手玩转win8开发系列课程(11)
摘要:运行程序这节的议程,我觉得很简单——运行程序在vs界面布局的页面都是静态,真正让项目运行起来才是动态的了。只有使其运行起来,这样xaml与C#合二为一,以一个真正的程序显示出来。你可以选择调试菜单,也可以按F5键,这样,能够生成并且在模拟器中运行。运行的结果就是如图所示:你可以清晰看见这样的效果,①一些来自于viewmodel中的数据源加载到了listview控件中。②我以前定义的一些数据的模板和样式也能在程序中得到了很好的应用。我们还能够看到了许多真的只有动态运行的才能够看到的效果。譬如说,当光标移动到某一项的上面,这项目才能高亮显示。选择时候,显示不同的状态、这些变化是怎么来的啊?是来自于
阅读全文
posted @
2012-12-03 09:44
laozhu1124
阅读(1362)
推荐(0) 编辑
一道百度之星编程大赛题的随笔联想·(2)
摘要:百度之星,是全球最大的中文搜索引擎,百度公司面向中国高校学生和编程爱好者所举办的高水平的程序设计大赛。他所考试的题目,全部都是算法的题目。鄙人虽然是一个.net程序员,在工作之余,喜爱算法。 我觉得这个题目有点意思,故而分享给大家,我想到两种方法,提供大家,希望对大家起了一个开阔思路的作用。下面介绍解法二了。解法二,是抓小放大。 由小及大。首先,说一说我分析的思路吧。第一步,还是判断i是不小于i/2,以此循环了。第二步,是不是判断此范围的值的累加是不是等于相应某个值。第三步,将其输出第四步,如果没有就输出none这个值。下面我们就看相应的源代码了 1 Console.WriteLine(...
阅读全文
posted @
2012-12-02 23:32
laozhu1124
阅读(3450)
推荐(2) 编辑
一道百度之星编程大赛题的随笔联想·(1)
摘要:百度之星,是全球最大的中文搜索引擎,百度公司面向中国高校学生和编程爱好者所举办的高水平的程序设计大赛。他所考试的题目,全部都是算法的题目。鄙人虽然是一个.net程序员,在工作之余,喜爱算法。 我觉得这个题目有点意思,故而分享给大家,我想到两种方法,提供大家,希望对大家起了一个开阔思路的作用。首先,看题目是那样的:请编写程序,根据输入的任何一个正整数,找出符合这种要求的所有连续正整数序列。输入数据:一个正整数,以命令行参数的形式提供给程序。输出数据:在标准输出上打印出符合题目描述的全部正整数序列,每行一个序列,每个序列都从该序列的最小正整数开始、以从小到大的顺序打印。如果结果有多个序列,按各序列
阅读全文
posted @
2012-12-02 17:31
laozhu1124
阅读(2323)
推荐(2) 编辑
手把手玩转win8开发系列课程(10)
摘要:这节,阐述了xaml文件。编写xaml源代码现在,资源列表已经有了啊,我要在xaml页面中进行布局了,listView的xmal的源代码如下所示:<Pagex:Class="MetroGrocer.Pages.ListPage"xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"xmlns:local="using:MetroGroce
阅读全文
posted @
2012-12-02 14:31
laozhu1124
阅读(1869)
推荐(0) 编辑
手把手玩转win8开发系列课程(9)
摘要:书接上文,继续议程添加资源字典在第一节,我说过怎么在StandardStyles.xaml中定义metro app的模板和样式。比起那些直接在UI控件上设置颜色、字体等等的属性,这个运用样式,的确是一个不错的选择。由于本项目中运用的样式确实是很多。因此我创建了一个叫做Resources的文件夹了,并且在这个文件夹下又创建了一个GrocerResourceDictionary.xaml的文件,在这个文件下,定义资源的模板。相应的源代码如下: 1 <ResourceDictionary 2 xmlns="http://schemas.microsoft.com/winfx/2006
阅读全文
posted @
2012-12-02 11:01
laozhu1124
阅读(2109)
推荐(1) 编辑
手把手玩转win8开发系列课程(8)
摘要:这节,我们继续上节的一个议程。①添加一个主页现在我已经定义了一个ViewModel,我就开始整合项目。第一步就是添加主页到添加到项目中去。我明白项目为何吧页面创建为空白页面,但这个空白的页面起名字叫空白一点儿意义都没有吧,我这里需要给新页面起一个更有意义的页面.原先的空白页面,我已经吧他干掉了。鄙人是个贱体,我更喜欢添加一些新的文件夹,使其更加的有层次。因此,我加了一个新的文件夹加做pages。在此文件夹下,我右击我添加了一个叫做list的xaml的文件、特别提醒,如果你是xaml的一个新手的话,就非常的总要先理解我在手把手玩转win8开发系列课程(5),(6)讲的那个空白项目的例子。你要明白
阅读全文
posted @
2012-12-01 19:09
laozhu1124
阅读(2319)
推荐(1) 编辑
手把手玩转win8开发系列课程(7)
摘要:在这章中,我将向读者展示metro 程序中最核心的部分——展示数据。为了使用应用程序只是简单的负责显示数据和处理用户交互,我这里使用view model的方式。对于这种数据业务展示分离的设计模式来说,你可能蛮熟悉的有mvc模式,有mvvm模式。这里,绑定数据的模式,并不是他们。如果你想学习mvc,mvvm设计模式的话,就去百度百科,维基百科吧,这里面有一些很精辟的描述。就我而言,我认为使用view model优点很多很多,任何metro 工程(除了特别小工程)就值得考虑考虑,因此我强烈的推荐给读者使用这种模式。当然了,我也并不是什么模式控。但我始终认为一定的模式能够在大多数的项目中解决实际的问
阅读全文
posted @
2012-12-01 13:15
laozhu1124
阅读(2191)
推荐(1) 编辑