首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    MyCat:第二章:Mycat前世今生

    Mycat前世今生 如果我有一个32核心的服务器,我就可以实现1个亿的数据分片,我有32核心的服务器么?没有,所以我至今无法实现1个亿 的数据分片。——Mycat ‘s Plan 上面这句话是Mycat 1.0快要完成时候的一段感言,而当发展到Mycat 1.3的时候,我们又有了一个新的Plan:  如果我们有10台物理机,我们就可以实现1000亿的数据分片,我们有10台物理机么?没有,所以,Mycat至今没有机会验证 1000亿大数据的支撑能力——Mycat ‘s Plan 2.0 “每一个成功的男人背后都有一个女人”。自然Mycat也逃脱不了这个法则。Mycat背后是阿里曾经开源的知名产品—— Cobar。Cobar的核心功能和优势是MySQL数据库分片,此产品曾经广为流传,据说最早的发起者对Mysql很精通,后来从阿里 跳槽了,阿里随后开源的Cobar,并维持到2013年年初,然后,就没有然后了。 Cobar的思路和实现路径的确不错。基于Java开发的,实现了MySQL公开的二进制传输协议,巧妙地将自己伪装成一个MySQL Server,目前市面上绝大多数MySQL客户端工具和应用都能兼容。比自己实现一个新的数据库协议要明智的多,因为生态环境在 哪里摆着。 Cobar使用起来也非常方便。由于是基于Java语言开发的,下载下来解压,安装JDK,然后配置几个不是很复杂的配置文件,猛 击鼠标,就能启动Cobar。因此这个开源产品赢得了很多Java粉丝以及PHP用户的追捧。当然,笨人(Leader us)也跟着进入,并 且在某个大型云项目中——“苦海无边”的煎着熬,良久。 爱情就像是见鬼。只有撞见了,你才会明白爱情是怎么回事。TA是如此神秘,欲语还羞。情窦初开的你又玩命将TA的优点放大, 使自己成为一只迷途的羔羊。每个用过Cobar的人就像谈过一段一波三折、荡气回肠的爱情,令你肝肠寸断。就像围城:里面的 人已经出不来了,还有更多的人拼命想挤进去。 仅以此文,献给哪些努力在IT界寻求未来的精英和小白们,还有更多被无视的,正准备转行的同仁,同在江湖混,不容易啊,面 试时候就装装糊涂,放人家一马,说不定,以后又是一个Made in China的乔布斯啊。 如果我有一个32核心的服务器,我就可以实现1个亿的数据分片,我有32核心的服务器么?没有,所以我至今无法实现1个亿的数 据分片。——Mycat ‘s Plan 曾经的TA 曾经的TA,长发飘飘,肤若凝脂,国色天香,长袖善舞,所以,一笑倾城。 那已成传说,一如您年少时的坚持:“书中自有黄金屋…” Cobar曾是多少IT骚年心中的那个TA,有关Cobar的这段美好的描述(不能说是广告)俘虏了众多程序猿躁动纯真的心: Cobar是阿里巴巴研发的关系型数据的分布式处理系统,该产品成功替代了原先基于Oracle的数据存储方案,目前已 经接管了3000+个MySQL数据库的schema,平均每天处理近50亿次的SQL执行请求。 50亿有多大?99%的普通人类看到这个数字,已经不能呼吸。当然,我指的是**RMB**。99%的程序猿除了对工资比较敏感,其 实对数字通常并不感冒。上面这个简单的数字描述,已立刻让我们程序型的大脑短路。恨不得立刻百度Cobar,立刻 Download,立刻熬夜研究。做个简单的推算,50亿次请求转换为每个schema每秒的数据访问请求即TPS,于是我们得到一个让 自己不能相信的数字:20TPS,每秒不到20个访问。 Cobar最重要的特性是分库分表。Cobar可以让你把一个MySQL的Table放到10个甚至100个位于不同物理机上的MySQL服务器 上去存储,而在用户看来是一张表(逻辑表)。这样功能很有价值。比如:我们有1亿的订单,则可以划分为10个分片,存储到 2-10个物理机上。每个MySQL服务器的压力减少,而系统的响应时间则不会增加。看上去很完美的功能,而且潜意识里,执行 这句SQL: select count(*) from order 100%的人都会认为:会返回1条数据,但事实上,Cobar会返回N条数据,N=分片个数。 接下来我们继续执行SQL: select count(*) from order order by order_date 你会发现奇怪的乱序现象,而且结果还随机,这是因为,Cobar只是简单的把上述SQL发给了后端N个分片对应的MySQL服务器去执 行,然后把结果集直接输出…. 再继续看看,我们常用的Limit分页的结果…可以么?答案是:**不可以** 这个问题可以在客户端程序里做些工作来解决。所以随后出现了Cobar Client。据我所知,很多Cobar的使用者也都是自行开发 了类似Cobar Client的工具来解决此类问题。从实际应用效果来说,一方面,客户端编程方式解决,困难度很高,Bug率也居高 不下;另一方面,对于DBA和

    02

    服务器SecureCRT连接失败怎么办?

    服务器安装Linux系统,可以使用SecureCRT远程输入命令管理,但使用过程中有时候会出现连接失败的故障,要怎么办呢?亚洲云小编在这里总结几个常见故障以及解决办法。 1、网络链接   当主机使用无线网时,网络连接设置为桥接模式   当主机使用以太网时,网络连接设置为NAT模式   最重要的是开启VM的网络服务   windows的服务 services.msc中打开 VMware NAT Service 2、Linux网络配置   可以使用固定IP,此时设置的IP要与Windows主机的IP在同一网关下   sudo vi /etc/network/interfaces   内容如下:   auto lo   iface lo inet loopback   auto eth0   iface eth0 inet static   address 192.168.255.101   netmask 255.255.255.0   gateway 192.168.255.1   也可以使用自动获取IP   直接删掉刚才vi编辑的文件最后的部分,只留前两句   auto lo   iface lo inet loopback   然后重启网络   sudo /etc/init.d/networking restart   使用 ifconfig查看网络IP,是否是同一网关的,使用ping 主机IP是否通路 3、Linux启动SSH服务   如果Linux没有启动这个服务就算你在SecureCRT上设置完成也无法链接成功,因为Linux还没有支持   先使用sudo apt-get update 指令更新一下源然后使用   sudo apt-get install openssh-server //安装SSH服务   安装SSH服务,查看服务是否开启   sudo ps -e | grep ssh //查看SSH服务   sudo service ssh start //启动SSH服务   如图为已经开启了SSH服务的打印 4、设置SecureCRT   在以上流程做完后设置基本不会遇到问题,如果遇到问题看看前边的步骤是否完成   在SecureCRT上新建一个快速链接,选择SSH   然后输入登录名和密码,然后会出现一个接受什么授权,就算是创建成功了   总结:网络配置时,注意IP的设定以及设定完后重启网络;注意SSH服务,如果Linux上SSH服务没有开启,SecureCRT会出现链接不成功,且窗口打印出一串方框,需要联系主机商解决。

    02

    面试:第二章:各种框架和中间件以及缓存数据库

    1、用户向服务器发送请求,请求被SpringMVC的前端控制器DispatcherServlet截获。 2、DispatcherServlet对请求的URL(统一资源定位符)进行解析,得到URI(请求资源标识符),然后根据该URI, 通过配置或注解调用HandlerMapping找到Handler配置的所有相关的对象,包括Handler对象以及Handler对象对应的拦截器, 这些对象都会被封装到一个HandlerExecutionChain对象当中返回DispatcherServlet。 3、前端控制器根据获得的Handler,请求HandlerAdapter处理多种Handler,调用Handler实际处理请求的方法。 4、提取请求中的模型数据,开始执行Handler(Controller) 5、Handler执行完成后,向DispatcherServlet返回一个ModelAndView对象。 6、根据返回的ModelAndView对象,请求ViewResolver(视图解析器)将逻辑视图解析成真正的视图并返回view给前端控制器。 7、渲染视图将model数据转换为response响应 8、把响应结果给返回给客户端。

    03
    领券