MySQL连接问题浅析

MySQL的客户端,无论是PHP或者Java,都会发起多个连接来提高系统的吞吐量。在云里面的服务器,因为一些设计和实现上的不同,有一些问题被放大了,同时也带了一些新的问题。 连接的超时时间 在Azure里面,所有的TCP连接都会通过Azure最外层的网络负载均衡器(SLB),负载均衡器有一个很短的空闲超时,缺省在几分钟。当连接超时的时候,负载均衡器不会通知TCP连接的两端,服务器和客户端都不会得到连接断开的通知。这个行为对许多连接池的实现带来了困扰。所以,对于连接超时时间我们的服务缺省设置为120秒,这个时间确定比负载均衡器的空闲超时要短来避免这个问题。 这个时间同时是对一个查询最长的执行时间。因为在查询的时候是没有网络流量的,负载均衡器会认为这个链接是空闲的。 连接池的使用和大小 我们的服务对于链接的建立做了很多优化,基本上建立一个新连接的时间和在本地的MySQL性能接近,但是新建一个连接的代价仍然是不可忽视的,我们建议使用连接池(JAVA)或者长连接(PHP)。实际代码的例子可以参考http://www.windowsazure.cn/documentation/articles/mysql-database-connection-pool 在使用连接池的时候,建议保持一个比较小的最小连接数,这个数字可以通过观察实际应用的平均压力来确定。 连接池最大的链接数是需要通过对应用程序进行性能压力测试以后决定的。在大多数的情况下,我们服务多个版本(MS1-4)的链接数限制并不是最佳性能的链接数,往往更少的链接数能达到更好的性能。比如MS4的链接数限制是750,但它的最佳的输出性能一般发生在链接数在150-200之间,当然这个值和实际的数据库以及查询有非常大的相关性。

0

Azure PowerShell 1.0.0以上版本在中国Azure使用的注意事项

随着Azure PowerShell 1.0.0+的推出,越来越多的客户开始使用新的版本的Azure PowerShell。此版本的PowerShell最大的改变在于将原先的Switch-AzureMode的指令移除,将原本在其下的指令改以加上Rm的方式存在,如Get-AzureResource改为Get-AzureRmResource。如此一来,在使用之前就不需要先做AzureMode的切换。因此,PowerShell1.0.0的改变主要影响的是使用Azure资源管理器(Azure Resource Manager,以下简称ARM)的用户,对于使用Azure服务管理器(Azure Service Manager,以下简称ASM)的用户影响并不大。(关于两者差异可参考下列常见问题) 然而,由于此次版本的改变,许多用户在验证身份时发生了问题: 1.    如同以前版本使用Add-AzureAccount–Environment AzureChinaCloud输入中国Azure的身份。却发现使用AzureRm相关指令时要求重新以Login-AzureRmAccount输入身份。 2. 当输入Login-AzureRmAccount–Environment AzureChinaCloud时,出现错误。 这是因为此次改版之后将ASR和ARM两者的身份信息及环境参数分开,因此需要分别输入并需要对环境参数进行额外操作。 在解决这个错误之前,需要先确认当前Azure PowerShell的版本。 可在控制台中查找相关信息或在PowerShell中执行 Get-Module -ListAvailable | Where-Object {$_.name -like “*Azure*” } 这边需要特别确认AzureRM.Profile的版本,我这边的版本是1.0.1。 首先,建议所有的用户升级到Azure PowerShell 1.0.2以上版本,主要是因为在此版本中提供了相关修正。使用0.9.x版本的用户,也建议进行升级,主要是因为有些新的服务在新的版本下才能使用。 (如RedisCache Premium) 最新的Azure PowerShell安装文件下载地址请到这里查找: https://github.com/Azure/azure-powershell/releases 在此,我假设Azure PowerShell都升级到1.0.2以上版本了。(无法升级的1.0.0及1.0.1用户作法可参考常见问题) 接着,在PowerShell中输入下列指令 Login-AzureRmAccount –EnvironmentName AzureChinaCloud 在Azure PowerShell 1.0.2之后,加入了-EnvironmentName参数,使用该参数就能成功验证中国Azure的账户信息。 接着,就能正常的操作AzureRm相关指令了 常见问题 1.  如果我现在使用的版本是AzurePowerShell 1.0.0 / 1.0.1,该如何进行ARM的身份验证? 需要先定义在ARM下可用的环境变数 $ChinaRmEnv =Get-AzureRmEnvironment –Name AzureChinaCloud…

0

Windows Azure移动终端云服务管理(公测版)

概览 云在远方,管理在您手中。在这个移动为先 云为先的世界,服务不再是基于请求才提供,而是主动来到身边方便您的模式了。我们最近将会陆续推出几大移动端利器帮助您随时随地管理您的云服务。 首批利器之中排名第一当属Azure云助手应用, 它是免费手机App,有安卓和苹果两个版本,目前应用处于公测阶段。利器二是Microsoft云科技微信公众号里“我的云”,它藏身于微信公众号之中。他们两个都是是云服务监控和管理工具,面向的是世纪互联运营的 Windows Azure中国的云服务。 首期推出的5大主要功能如下。 ·        使用Azure Active Directory登陆Azure,PIN码设置及解锁,高级别安全保障。 ·        查看Azure上的服务状态,目前支持虚拟机,存储空间,云服务,以及WEB应用,支持按订阅号过滤服务。 ·        获取服务状态异常通知,目前虚拟机的CPU异常通知已上线。 ·        查看Azure服务的基本信息,数据监控并执行一些管理操作(启动,停止,重启等,目前仅Azure云助手应用支持此类操作)。 ·        账单服务,目前支持企业客户管理员查询(目前仅Azure云助手应用支持此操作)。 安装使用 Azure云助手应用   扫描二维码直接下载安装。目前支持安卓版和iOS版。 如果您使用安卓版,遇到系统提示已禁止安装未知来源的应用,请选择解除禁止按钮,或者到设置页面暂时开启允许安装未知来源应用开关。 如果您使用iOS版,由于iOS内测流程限制,麻烦您提交您的苹果账户名(AppleID,一般为电子邮件地址,即您用来登录App Store和iCloud的帐户名)以便将您加入内测名单。请发送邮件到MCDIE@microsoft.com,我们会回复您详细的内测安装流程。 安装完成后打开应用,接受测试条款,点击登录按钮即可开始使用。 以下是几个主要功能页面。   Microsoft云科技微信公众号 “我的云“ 扫描此二维码关注Microsoft云科技微信公众号。 公众号里您可以查看Azure云服务相关的技术文章和业界动态。选择绑定微信号和Azure云服务的账号,您就可以直接查看您的Azure服务状态,收到提醒消息。 以下是几个主要功能页面。   后续更新 本文仅是简介,更多详情请关注Microsoft云科技公众号,绑定微软云服务,或下载使用Azure云助手应用。我们会继续努力,更有针对性的提升用户体验,逐步增加功能模块。敬请期待! 如果您对我们的产品有任何意见或者建议,请发邮件到AZUREME@microsoft.com ,或扫码加入微信群,我们会提供详细的咨询。您的反馈是我们共赢的基石。如果您尚未注册成为Azure用户,请与我们联系,我们将为前30名联系人提供1元试用账户。

0

12月2日,上海Cloud Foundry Summit, Azure Cloud Foundry 团队期待和你见面!

12月2日,上海Cloud Foundry Summit, Azure Cloud Foundry 团队期待和你见面! 12日2日对中国Cloud Foundry的用户和开源社区来说,是极有意义的一天。这是Cloud Foundry在上海,也是亚洲的第一次峰会, 届时各国专家云集,而中国用户和社区也有机会参与演讲和讨论交流。 对微软云计算用户来说这更是一个好消息,微软已在11月2日宣布Cloud Foundry 在全球Azure平台上正式发布General Availability(GA)版本, 并宣布和Pivotal合作发布了Azure on Pivotal  的预览版。 Cloud Foundry 是一个高效精简的云计算运用管理平台,支持Node.Js, JAVA,Python等多种开发语言,以及多种公有,私有云平台。微软对开源Cloud Foundry的支持是是微软开放云计算平台之路上的又一个里程碑。用户不仅可以在Azure平台上部署使用Cloud Foundry,使用和其他云平台一致的用户界面, 也可以使用Azure上最新的模块技术简化部署过程。 微软Azure Cloud Foundry的上海团队将会在峰会上介绍Cloud Foundry在Azure平台的部署,构建,应用的基本要点,以及前景展望。团队将会分享的话题为:  用ARM模板和Service Broker来部署你的第一个CF应用,演讲者:Ning Kuang,微软资深项目经理 在公有云上部署企业级Cloud Foundry应用,演讲者:Abel Hu, 微软软件工程师 在中国团队的努力下,Cloud Foundry在中国的支持也在积极进行中,很快就会有好消息宣布。我们期待在12月2号和3号在上海与中国用户和社区交流Cloud Foundry 的开发心得,并倾听你们的反馈! 微软作为本次大会的赞助商之一,向您发出最诚挚的邀请:注册优惠只需$150,优惠码CFAS15MSFT30 上海Cloud Foundry Summit  , 12月2日中国上海市黄浦区西藏中路上海雅居乐万豪酒店  

0

MySQL Database on Azure – 利用PowerShell快速创建使用数据库服务

如果您的应用需要通过脚本快速创建一个或多个MySQL数据库,MySQL Database on Azure目前开放了对于PowerShell的支持,可以帮助您快速利用自动化脚本进行数据库服务的创建、管理等操作。您在Windows Azure管理门户上进行的操作,基本都可以通过PowerShell来执行。 只需以下九个简单步骤,您可以迅速通过脚本创建并使用MySQL。 步骤1:安装配置Azure PowerShell 运行脚本前,您需要安装并运行Azure PowerShell。您可以通过运行Microsft Web平台安装程序下载并安装最新版本Azure PowerShell 。可参阅如何安装和配置Azure PowerShell来了解更多详细步骤。 用于创建和管理MySQL Database on Azure 数据库的cmdlet位于Azure资源管理器模块中。启动Azure PowerShell时,默认情况下将导入Azure模块中的cmdlet。若要切换到Azure资源管理器模块,请使用以下命令转换: Switch-AzureMode -Name AzureResourceManager 步骤2:配置账户信息 在针对Azure订阅运行PowerShell之前,必须先将Azure账户绑定。运行以下命令,在登陆页面输入与Azure管理门户相同的电子邮件和密码,进行身份验证。 Add-AzureAccount -Environment AzureChinaCloud 步骤3:订阅MySQLDatabase on Azure服务 运行以下命令订阅MySQL服务。 Register-AzureProvider -ProviderNamespace “Microsoft.MySql” 步骤4:创建资源组 如果您已有资源组,可以直接创建服务器,或者编辑运行以下命令,创建新的资源组, 用户可自定义资源组的名称,以”resourcegroupChinaEast”为例: New-AzureResourceGroup -Name “resourcegroupChinaEast” -Location “chinaeast” 步骤5:创建服务器 编辑运行以下命令,定义您的服务器名称、位置、版本等信息来完成服务器创建,以下命令以服务器名称”testPSH”为例: New-AzureResource -ResourceType “Microsoft.MySql/servers” -ResourceName testPSH -ApiVersion 2015-09-01 -ResourceGroupName resourcegroupChinaEast -Location chinaeast -PropertyObject @{version = ‘5.5’} 注:目前暂不支持通过PowerShell更改SKU, 创建服务器缺省的SKU为”MS2”。如需调整SKU请在Azure管理门户上进行修改。 步骤6:创建服务器防火墙原则 编辑运行以下命令,定义您的防火墙原则名称、IP白名单范围(起始IP地址,终止IP地址)等信息来完成防火墙原则的创建。以防火墙原则名称”rule1”为例: New-AzureResource -ResourceType “Microsoft.MySql/servers/firewallRules” -ResourceName testPSH/rule1 -ApiVersion 2015-09-01 -PropertyObject @{startIpAddress=”0.0.0.0″; endIpAddress=”255.255.255.255″} -ResourceGroupName resourcegroupChinaEast 步骤7:创建数据库 编辑运行以下命令,定义您的数据库名称、字符集等信息完成数据库创建。以数据库名称”demodb”为例: New-AzureResource -ResourceType “Microsoft.MySql/servers/databases” -ResourceName testPSH/demodb -ApiVersion 2015-09-01 -ResourceGroupName resourcegroupChinaEast -PropertyObject @{collation=’utf8_general_ci’; charset=’utf8′} 步骤8:创建用户 编辑运行以下命令,定义您的用户名、密码等信息完成数据库创建。以用户名”admin”为例: New-AzureResource -ResourceType “Microsoft.MySql/servers/users” -ResourceName testPSH/admin -ApiVersion 2015-09-01 -ResourceGroupName resourcegroupChinaEast -PropertyObject @{password=’abc123′} 步骤9:添加用户权限 编辑运行以下命令,设置数据库读写权限给用户。权限分为”Read”以及”ReadWrite”。以用户名”admin”为例: New-AzureResource -ResourceType “Microsoft.MySql/servers/databases/privileges” -ResourceName testPSH/demodb/admin -ApiVersion 2015-09-01 -ResourceGroupName resourcegroupChinaEast -PropertyObject @{level=’ReadWrite’} 通过上述操作,您已经完成了服务器、数据库、用户、防火墙原则等的创建工作,可以开始使用MySQL Database on Azure的数据库服务。详细的文档可以查看利用Azure资源管理器与PowerShell来部署使用MySQL Database…

0

新版Windows Azure CDN管理门户正式上线

经过产品团队的不懈努力,新版Windows Azure CDN管理门户在经过了有限开放预览之后,已经正式上线并开放给所有用户。 新版Windows Azure CDN管理门户经过全新的设计,除了在使用易用性、视觉展示效果等方面有所提升外,还增加了多个用户需求很高的功能模块。本文简要介绍了这些新增特性,更多详细内容请登入新版Windows Azure CDN管理门户体验。 概览 下面是新版CDN管理门户的首页:  目前新版CDN管理门户提供了如下功能: 域名管理 流量报表 带宽报表 缓存刷新 内容预取 下面就针对上述功能进行具体介绍。 功能模块 1. 域名管理 当您在左侧的导航窗格中单击 “域名管理”时,将显示您目前已经创建的所有CDN加速域名的列表视图。你可以通过Azure订阅下拉列表选择不同的订阅查看不同订阅下的CDN加速域名信息。同时可以对加速域名进行“修改配置”,“缓存规则配置”和“访问控制管理”。  修改加速域名配置 您可以通过加速域名的“修改配置”功能,对“源站地址”和“回源域名”进行特殊配置。 首先解释一下“源站地址(回源地址)”和“回源域名(回源host header)”的区别。回源地址表示源站实际可以被访问到的地址,可以是IP也可以是域名。如果是域名,CDN在回源是会对该域名进行地址解析,然后用解析出来的IP再进行访问。回源域名表示CDN回源时,HTTP请求头(request header)中的Host字段值。这个字段值一般是域名形式的字符串,被源站用来识别是否与源站服务器上配置的域名相同。   修改缓存规则 系统已经针对不同的CDN加速类型提供了默认的缓存规则。您可以在这里进行定制化修改。   访问控制管理 您可以在这里进行防盗链等相关配置。 2. 流量报表 您可以在这个功能模块里查看同一个Azure订阅下的一个或多个加速域名的流量(包括回源)信息,可以按预设的或者自行指定的时间范围来查看。   3. 带宽报表 您可以在这个功能模块里查看同一个Azure订阅下的一个或多个加速域名的带宽(包括回源)信息,可以按预设的或者自行指定的时间范围来查看。   4. 缓存刷新 当您在左侧的导航窗格中单击 “缓存刷新”时,可以对指定的文件或者目录进行手动刷新,以达到强制更新缓存内容的目的。您可以选择要查询的订阅(单选)、状态、时间范围、加速域名(单选),单击查询刷新结果后界面将显示符合条件的缓存刷新记录,数据格式及含义请参见实际页面中的详细说明。  5. 内容预取 当您在左侧的导航窗格中单击 “内容预取”时,可以对指定的文件进行内容预取和预取进度查询操作。 内容预取是指预先将指定URL的内容从源站缓存到CDN节点,这样可以消除用户第一次访问该资源时的等待时间。内容预取一般被用在进行大文件分发时的场景,可以有效的提升用户访问体验。 后续更新 本文对新版Windows Azure CDN管理门户的主要功能做了简单的介绍,请登录新版管理门户获得详细信息。接下来产品团队会进一步改进新版Windows Azure…

0

Windows Azure® 由世纪互联运营发布MySQL Database on Azure正式商用版

我们很高兴宣布MySQL Database on Azure于2015年9月1日在中国地区正式商用。回望过去,从2014年12月对少量用户开放的预览试用,到2015年4月30日对中国用户全面开放的公共预览,再到9月1日在中国地区正式商用。在这9个月时间,MySQL Database on Azure团队花了很多时间在完善功能,在稳定性、性能上面都有很大的提升,获得了用户的一致认可。在接下去几个月,我们团队会陆续推出更多的功能,为用户带来更多增值功能和更高性能的体验。 MySQL Database on Azure 帮助您在云端快速部署MySQL数据库,提供高可用性和全托管的体验,无需人工维护基础架构,让您更专注于产品的创新开发。我们的正式商用版提供99.9%的运行时间服务级别协议,用户可以更放心地使用。目前,已经有超过二百个(含企业用户)正在使用MySQL Database on Azure服务。很开心,我们的产品能够被用户接受、信赖,真真切切的帮助用户创造商业价值。 特性优点: MySQL Database on Azure提供的产品特色有: 基于Azure存储提供数据本地异地多重备份,保障数据高度可靠,支持99.9%的运行时间服务级别协议,支持异地灾备恢复。 提供防火墙功能并支持SSL链接访问数据库,保证数据高度安全。 支持30天数据备份,帮助您轻松进行数据回溯。 提供多个不同性能层级的版本,支持弹性扩展与收缩,简化购买体验。 提供各项数据库性能指标的监控以及日志,让您轻松方便的了解数据库运行情况。 兼容MySQL 协议(目前支持MySQL 5.5和5.6),您可以用熟悉的MySQL平台与技术进行开发和集成。 支持数据从企业本地的MySQL数据库同步到 MySQL Database on Azure, 更好的满足企业构建混合云的需求。 有关MySQL Database on Azure服务的详细信息,请访问MySQL Database on Azure网页。  快速入门: 以下我们将介绍部署,配置,监控和异地数据库同步MySQL实例的实战经验。 快速部署 通过Windows Azure管理门户,用户可以快速创建MySQL服务器,部署时间仅需1-2分钟。我们的服务保证您的数据库服务器的高可用性,提供自动软件修补功能,让您无需对数据库服务进行任何基础架构的维护。 弹性伸缩 您也再无需反复计算数据库服务器端的配置需求,MySQL Database on Azure 服务提供了多个不同性能的版本,您可以根据当前的性能需求选择一个相匹配的版本,后续再根据应用的实际运行情况进行弹性扩展或收缩。我们的服务按小时计费,账单透明,帮助您更有效的利用资源。 灵活配置 MySQL Database…

2

微软欢迎所有热爱开源软件的朋友们来投稿![征稿开放时间:2015年8月17日]

Azure是微软的云平台,不仅支持Windows服务器,也深爱着开源世界。通过与开源社区之间的合作, Azure支持了大量的开源软件和框架,涵盖了包括Linux 服务器,Docker, chef, MySQL, WordPress, redis等大部分主流互联网开源软件和应用框架, 并且其数量还在不断增加。 怎么在Azure平台上玩转开源软件呢?无论您是初入开源世界的小白,还是杀bug无数的技术“大牛”,都可以将您第一手的实战经验分享给社区。 如果您想先对Azure上的开源软件有所了解,可以登录http://www.windowsazure.cn/solutions/OSS/。 【征稿目标】 分享在Azure China上使用或者搭建开源软件环境的实战经验。 主题可以是Azure China已经提供的开源软件,也可以是基于Azure China的Linux服务器自行开发或搭建的开源软件。 【活动简介】 1.鼓励开源软件爱好者写下在Azure China上使用或者搭建开源软件环境的实战经验并投稿。 2.微软云计算创新中心会对稿件进行第一轮内部评选。 3.所有通过第一轮评选的稿件会被发布在http://www.windowsazure.cn/blog/。 4.邀请所有技术爱好者来进行第二轮评选投票。 5.前十名的稿件将会被额外标注和宣传。同时作者将获得相应奖品。  【活动时间】 征稿开放时间:                          2015年8月17日 征稿截止时间:                          2015年10月17日 第一轮内部评选结果公布:    …

0

Azure SQL 数据库最新版本现已提供预览版

 Tiffany Wissner  数据平台营销高级总监 我们之前在11月宣布将提供新的预览版,在该预览版中我们引入了接近完整的 SQL Server 引擎兼容性和更为高级的性能,这些都代表了下一代的 SQL 数据库服务。对超过 6 亿行数据进行内部测试后表明,新预览版的高级查询性能比目前高级 SQL 数据库的高级查询性能提高了大约 5 倍,如果应用内存中列存储技术,高级查询性能最高能够提高 100 倍。今天预览版中的功能标志着,在通过这一新服务架构为客户提供激动人心的新功能的道路上,我们迈出了第一步。 该预览版依然保持了基本、标准和高级级别这些新服务级别正式版中的势头,提供了可伸缩的性能、内置的异地复制和恢复功能,并且还引入了首个云数据库运行时间长达 99.99% 的服务级别协议。从 9 月起,我们还正式发布了审核功能,并引入了弹性缩放技术,可以显著简化高端横向扩展操作。如今,客户正在使用横向扩展方法,证明该服务可以运行任务关键应用程序的强大功能;其中一家客户有将近 90TB 的数据,分布在大约 2,000 个数据库中,每天需要处理大约 38 万次登录,而另一家客户正在运行一款多租户应用程序,有超过 20TB 的数据,分布在大约 225,000 个数据库中,每天需要处理超过 200 万次登录。 今天的预览版将继续我们的征程,为云带来行业领先的内存内置技术,开启新的功能,简化 SQL Server 数据库应用程序迁移到 Azure 的过程,同时大大提高客户处理更高数据库工作负荷的能力。Weichert 是美国一家提供全面服务的房地产提供商,这家公司正在积极使用新的预览版。 “我们是一家完全由 ROI 驱动的公司,我们致力于将任务关键应用程序迁移到 Azure 上——去年,我们将房地产搜索引擎 weichert.com 迁移到 Azure 上之后,成本节省了 60%。从战略角度来说,对于利用在线索引重建、分区等功能来迁移和处理大数据类型而言,这些 SQL 数据库服务更新就是我们的答案,”Weichert 系统开发副总裁 Joe…

0

Azure SQL 数据库新服务级别现已正式发布

T.K.Ranga Rengarajan   2014 年 9 月 10 日上午 11:00 我们很高兴地宣布,新的 SQL 数据库服务级被基本、标准和高级级别现已正式发布。这些服务级别中含有内置且可无缝使用的企业级功能,提升了您对数据库即服务的期望值——让您可以大大增加一位数据库管理员可以管理的数据库数量。 今天对于 Azure SQL 数据库社区而言是具有里程碑意义的一天。从 2009 年第一次向公众公布之后,我们这趟旅程就得到了我们客户及合作伙伴直接、深入的参与,我们从中受益良多。 在这一路上,我们扩大了该服务的全球规模和覆盖范围、增加了数据库大小并让数据库诊断更易于进行,等等。您推动我们将云可能带给我们的优势扩展到了数百万个数据库。您给我们反馈了对于关系数据库即服务的需求,帮助我们重新探索出了一种方式,使之与基于云的数据库工作负载的独特需求完美吻合。 在 4 月,我们已发布基本、标准和高级级别的预览版。这些级别为您的轻型和重型事务型应用程序提供了可预测的性能,同时还能确保应用程序的性能不再受其他客户工作负荷的影响,以此解决如今对于高要求云应用程序的需求。此外,这些新的级别还可以为您提供以下新功能: 更高的运行时间服务级别协议:正常运行时间以前为 99.9%,现在为 99.99%——这是数据库即服务行业的最高值之一 时间点恢复:具有内置备份功能,最长数据保留天数为 35 天 活动异地复制和标准异地复制选项:可以不间断地将数据复制到地理上分散的辅助位置中 更大的数据库:数据库以前是 150 GB,现在数据库最大可以达到 500 GB 审核:增加安全信心 自 4 月发布预览版以来,我们听取了有关新级别的重要反馈,并最终预先宣布了根据这种直接沟通对正式发布版本所做的更改。有关关键更改的内容,概述如下: 新的 S0 性能级别:  在标准级服务级别中,我们提供了新的 S0 性能级别,可以简化从基本级别到标准级别的过渡。 高级和标准级别降价:  最终价格将比以前公布的正式版定价最高节省 50%。正式版定价从 2014 年 11 月 1 日起生效。 按小时计费:  从今天起,Azure SQL…

0