• 关于

    实时计算机系统宕机的原因

    的搜索结果

回答

前言 这期我想写很久了,但是因为时间的原因一直拖到了现在,我以为一两天就写完了,结果从构思到整理资料,再到写出来用了差不多一周的时间吧。 你们也知道丙丙一直都是创作鬼才来的,所以我肯定不会一本正经的写,我想了好几个切入点,最后决定用一个完整的电商系统作为切入点,带着大家看看,我们需要学些啥,我甚至还收集配套视频和资料,暖男石锤啊,这期是呕心沥血之作,不要白嫖了。 正文 在写这个文章之前,我花了点时间,自己臆想了一个电商系统,基本上算是麻雀虽小五脏俱全,我今天就用它开刀,一步步剖析,我会讲一下我们可能会接触的技术栈可能不全,但是够用,最后给个学习路线。 Tip:请多欣赏一会,每个点看一下,看看什么地方是你接触过的,什么技术栈是你不太熟悉的,我觉得还算是比较全的,有什么建议也可以留言给我。 不知道大家都看了一下没,现在我们就要庖丁解牛了,我从上到下依次分析。 前端 你可能会会好奇,你不是讲后端学习路线嘛,为啥还有前端的部分,我只能告诉你,傻瓜,肤浅。 我们可不能闭门造车,谁告诉你后端就不学点前端了? 前端现在很多也了解后端的技术栈的,你想我们去一个网站,最先接触的,最先看到的是啥? 没错就是前端,在大学你要是找不到专门的前端同学,去做系统肯定也要自己顶一下前端的,那我觉得最基本的技术栈得熟悉和了解吧,丙丙现在也是偶尔会开发一下我们的管理系统主要是VUE和React。 在这里我列举了我目前觉得比较简单和我们后端可以了解的技术栈,都是比较基础的。 作为一名后端了解部分前端知识还是很有必要的,在以后开发的时候,公司有前端那能帮助你前后端联调更顺畅,如果没前端你自己也能顶一下简单的页面。 HTML、CSS、JS、Ajax我觉得是必须掌握的点,看着简单其实深究或者去操作的话还是有很多东西的,其他作为扩展有兴趣可以了解,反正入门简单,只是精通很难很难。 在这一层不光有这些还有Http协议和Servlet,request、response、cookie、session这些也会伴随你整个技术生涯,理解他们对后面的你肯定有不少好处。 Tip:我这里最后删除了JSP相关的技术,我个人觉得没必要学了,很多公司除了老项目之外,新项目都不会使用那些技术了。 前端在我看来比后端难,技术迭代比较快,知识好像也没特定的体系,所以面试大厂的前端很多朋友都说难,不是技术多难,而是知识多且复杂,找不到一个完整的体系,相比之下后端明朗很多,我后面就开始讲后端了。 网关层: 互联网发展到现在,涌现了很多互联网公司,技术更新迭代了很多个版本,从早期的单机时代,到现在超大规模的互联网时代,几亿人参与的春运,几千亿成交规模的双十一,无数互联网前辈的造就了现在互联网的辉煌。 微服务,分布式,负载均衡等我们经常提到的这些名词都是这些技术在场景背后支撑。 单机顶不住,我们就多找点服务器,但是怎么将流量均匀的打到这些服务器上呢? 负载均衡,LVS 我们机器都是IP访问的,那怎么通过我们申请的域名去请求到服务器呢? DNS 大家刷的抖音,B站,快手等等视频服务商,是怎么保证同时为全国的用户提供快速的体验? CDN 我们这么多系统和服务,还有这么多中间件的调度怎么去管理调度等等? zk 这么多的服务器,怎么对外统一访问呢,就可能需要知道反向代理的服务器。 Nginx 这一层做了反向负载、服务路由、服务治理、流量管理、安全隔离、服务容错等等都做了,大家公司的内外网隔离也是这一层做的。 我之前还接触过一些比较有意思的项目,所有对外的接口都是加密的,几十个服务会经过网关解密,找到真的路由再去请求。 这一层的知识点其实也不少,你往后面学会发现分布式事务,分布式锁,还有很多中间件都离不开zk这一层,我们继续往下看。 服务层: 这一层有点东西了,算是整个框架的核心,如果你跟我帅丙一样以后都是从事后端开发的话,我们基本上整个技术生涯,大部分时间都在跟这一层的技术栈打交道了,各种琳琅满目的中间件,计算机基础知识,Linux操作,算法数据结构,架构框架,研发工具等等。 我想在看这个文章的各位,计算机基础肯定都是学过的吧,如果大学的时候没好好学,我觉得还是有必要再看看的。 为什么我们网页能保证安全可靠的传输,你可能会了解到HTTP,TCP协议,什么三次握手,四次挥手。 还有进程、线程、协程,什么内存屏障,指令乱序,分支预测,CPU亲和性等等,在之后的编程生涯,如果你能掌握这些东西,会让你在遇到很多问题的时候瞬间get到点,而不是像个无头苍蝇一样乱撞(然而丙丙还做得不够)。 了解这些计算机知识后,你就需要接触编程语言了,大学的C语言基础会让你学什么语言入门都会快点,我选择了面向对象的JAVA,但是也不知道为啥现在还没对象。 JAVA的基础也一样重要,面向对象(包括类、对象、方法、继承、封装、抽象、 多态、消息解析等),常见API,数据结构,集合框架,设计模式(包括创建型、结构型、行为型),多线程和并发,I/O流,Stream,网络编程你都需要了解。 代码会写了,你就要开始学习一些能帮助你把系统变得更加规范的框架,SSM可以会让你的开发更加便捷,结构层次更加分明。 写代码的时候你会发现你大学用的Eclipse在公司看不到了,你跟大家一样去用了IDEA,第一天这是什么玩意,一周后,真香,但是这玩意收费有点贵,那免费的VSCode真的就是不错的选择了。 代码写的时候你会接触代码的仓库管理工具maven、Gradle,提交代码的时候会去写项目版本管理工具Git。 代码提交之后,发布之后你会发现很多东西需要自己去服务器亲自排查,那Linux的知识点就可以在里面灵活运用了,查看进程,查看文件,各种Vim操作等等。 系统的优化很多地方没优化的空间了,你可能会尝试从算法,或者优化数据结构去优化,你看到了HashMap的源码,想去了解红黑树,然后在算法网上看到了二叉树搜索树和各种常见的算法问题,刷多了,你也能总结出精华所在,什么贪心,分治,动态规划等。 这么多个服务,你发现HTTP请求已经开始有点不满足你的需求了,你想开发更便捷,像访问本地服务一样访问远程服务,所以我们去了解了Dubbo,Spring cloud。 了解Dubbo的过程中,你发现了RPC的精华所在,所以你去接触到了高性能的NIO框架,Netty。 代码写好了,服务也能通信了,但是你发现你的代码链路好长,都耦合在一起了,所以你接触了消息队列,这种异步的处理方式,真香。 他还可以帮你在突发流量的时候用队列做缓冲,但是你发现分布式的情况,事务就不好管理了,你就了解到了分布式事务,什么两段式,三段式,TCC,XA,阿里云的全局事务服务GTS等等。 分布式事务的时候你会想去了解RocketMQ,因为他自带了分布式事务的解决方案,大数据的场景你又看到了Kafka。 我上面提到过zk,像Dubbo、Kafka等中间件都是用它做注册中心的,所以很多技术栈最后都组成了一个知识体系,你先了解了体系中的每一员,你才能把它们联系起来。 服务的交互都从进程内通信变成了远程通信,所以性能必然会受到一些影响。 此外由于很多不确定性的因素,例如网络拥塞、Server 端服务器宕机、挖掘机铲断机房光纤等等,需要许多额外的功能和措施才能保证微服务流畅稳定的工作。 **Spring Cloud **中就有 Hystrix 熔断器、Ribbon客户端负载均衡器、Eureka注册中心等等都是用来解决这些问题的微服务组件。 你感觉学习得差不多了,你发现各大论坛博客出现了一些前沿技术,比如容器化,你可能就会去了解容器化的知识,像**Docker,Kubernetes(K8s)**等。 微服务之所以能够快速发展,很重要的一个原因就是:容器化技术的发展和容器管理系统的成熟。 这一层的东西呢其实远远不止这些的,我不过多赘述,写多了像个劝退师一样,但是大家也不用慌,大部分的技术都是慢慢接触了,工作中慢慢去了解,去深入的。 好啦我们继续沿着图往下看,那再往下是啥呢? 数据层: 数据库可能是整个系统中最值钱的部分了,在我码文字的前一天,刚好发生了微盟程序员删库跑路的操作,删库跑路其实是我们在网上最常用的笑话,没想到还是照进了现实。 这里也提一点点吧,36小时的故障,其实在互联网公司应该是个笑话了吧,权限控制没做好类似rm -rf 、fdisk、drop等等这样的高危命令是可以实时拦截掉的,备份,全量备份,增量备份,延迟备份,异地容灾全部都考虑一下应该也不至于这样,一家上市公司还是有点点不应该。 数据库基本的事务隔离级别,索引,SQL,主被同步,读写分离等都可能是你学的时候要了解到的。 上面我们提到了安全,不要把鸡蛋放一个篮子的道理大家应该都知道,那分库的意义就很明显了,然后你会发现时间久了表的数据大了,就会想到去接触分表,什么TDDL、Sharding-JDBC、DRDS这些插件都会接触到。 你发现流量大的时候,或者热点数据打到数据库还是有点顶不住,压力太大了,那非关系型数据库就进场了,Redis当然是首选,但是MongoDB、memcache也有各自的应用场景。 Redis使用后,真香,真快,但是你会开始担心最开始提到的安全问题,这玩意快是因为在内存中操作,那断点了数据丢了怎么办?你就开始阅读官方文档,了解RDB,AOF这些持久化机制,线上用的时候还会遇到缓存雪崩击穿、穿透等等问题。 单机不满足你就用了,他的集群模式,用了集群可能也担心集群的健康状态,所以就得去了解哨兵,他的主从同步,时间久了Key多了,就得了解内存淘汰机制…… 他的大容量存储有问题,你可能需要去了解Pika…. 其实远远没完,每个的点我都点到为止,但是其实要深究每个点都要学很久,我们接着往下看。 实时/离线/大数据 等你把几种关系型非关系型数据库的知识点,整理清楚后,你会发现数据还是大啊,而且数据的场景越来越多多样化了,那大数据的各种中间件你就得了解了。 你会发现很多场景,不需要实时的数据,比如你查你的支付宝去年的,上个月的账单,这些都是不会变化的数据,没必要实时,那你可能会接触像ODPS这样的中间件去做数据的离线分析。 然后你可能会接触Hadoop系列相关的东西,比如于Hadoop(HDFS)的一个数据仓库工具Hive,是建立在 Hadoop 文件系统之上的分布式面向列的数据库HBase 。 写多的场景,适合做一些简单查询,用他们又有点大材小用,那Cassandra就再合适不过了。 离线的数据分析没办法满足一些实时的常见,类似风控,那Flink你也得略知一二,他的窗口思想还是很有意思。 数据接触完了,计算引擎Spark你是不是也不能放过…… 搜索引擎: 传统关系型数据库和NoSQL非关系型数据都没办法解决一些问题,比如我们在百度,淘宝搜索东西的时候,往往都是几个关键字在一起一起搜索东西的,在数据库除非把几次的结果做交集,不然很难去实现。 那全文检索引擎就诞生了,解决了搜索的问题,你得思考怎么把数据库的东西实时同步到ES中去,那你可能会思考到logstash去定时跑脚本同步,又或者去接触伪装成一台MySQL从服务的Canal,他会去订阅MySQL主服务的binlog,然后自己解析了去操作Es中的数据。 这些都搞定了,那可视化的后台查询又怎么解决呢?Kibana,他他是一个可视化的平台,甚至对Es集群的健康管理都做了可视化,很多公司的日志查询系统都是用它做的。 学习路线 看了这么久你是不是发现,帅丙只是一直在介绍每个层级的技术栈,并没说到具体的一个路线,那是因为我想让大家先有个认知或者说是扫盲吧,我一样用脑图的方式汇总一下吧,如果图片被平台二压了。 资料/学习网站 Tip:本来这一栏有很多我准备的资料的,但是都是外链,或者不合适的分享方式,博客的运营小姐姐提醒了我,所以大家去公众号回复【路线】好了。 絮叨 如果你想去一家不错的公司,但是目前的硬实力又不到,我觉得还是有必要去努力一下的,技术能力的高低能决定你走多远,平台的高低,能决定你的高度。 如果你通过努力成功进入到了心仪的公司,一定不要懈怠放松,职场成长和新技术学习一样,不进则退。 丙丙发现在工作中发现我身边的人真的就是实力越强的越努力,最高级的自律,享受孤独(周末的歪哥)。 总结 我提到的技术栈你想全部了解,我觉得初步了解可能几个月就够了,这里的了解仅限于你知道它,知道他是干嘛的,知道怎么去使用它,并不是说深入了解他的底层原理,了解他的常见问题,熟悉问题的解决方案等等。 你想做到后者,基本上只能靠时间上的日积月累,或者不断的去尝试积累经验,也没什么速成的东西,欲速则不达大家也是知道的。 技术这条路,说实话很枯燥,很辛苦,但是待遇也会高于其他一些基础岗位。 所实话我大学学这个就是为了兴趣,我从小对电子,对计算机都比较热爱,但是现在打磨得,现在就是为了钱吧,是不是很现实?若家境殷实,谁愿颠沛流离。 但是至少丙丙因为做软件,改变了家庭的窘境,自己日子也向小康一步步迈过去。 说做程序员改变了我和我家人的一生可能夸张了,但是我总有一种下班辈子会因为我选择走这条路而改变的错觉。 我是敖丙,一个在互联网苟且偷生的工具人。 创作不易,本期硬核,不想被白嫖,各位的「三连」就是丙丙创作的最大动力,我们下次见! 本文 GitHub https://github.com/JavaFamily 已经收录,有大厂面试完整考点,欢迎Star。 该回答来自:敖丙

剑曼红尘 2020-03-06 11:35:37 0 浏览量 回答数 0

回答

详细解答可以参考官方帮助文档本服务条款是阿里云计算有限公司(以下简称“阿里云”)与您就云盾DDoS防护服务的相关事项所订立的有效合约。您通过盖章、网络页面点击确认或以其他方式选择接受本服务条款,或实际使用阿里云提供的云盾DDoS防护服务,即表示您与阿里云已达成协议并同意接受本服务条款的全部约定内容。如若双方盖章文本与网络页面点击确认或以其他方式选择接受之服务条款文本,存有不一致之处,以双方盖章文本为准。 在接受本服务条款之前,请您仔细阅读本服务条款的全部内容(特别是以粗体及/或下划线标注的内容)。如果您对本服务条款的条款有疑问的,请通过阿里云官网(www.aliyun.com)公布的联系方式,进行询问,阿里云将向您解释条款内容。如果您不同意本服务条款的任意内容,或者无法准确理解阿里云对条款的解释,请不要进行后续操作。 1 定义 1.1 本条款中的“您”是指:所有使用阿里云云盾DDoS防护服务的主体(包括但不限于个人、团队、公司、组织等),或称“用户”。 1.2 本条款中“服务”指:阿里云向您提供 www.aliyun.com 网站上所展示的云盾DDoS防护服务以及相关的技术及网络支持服务。 1.3 DDoS: Distributed Denial of Service,即分布式拒绝服务攻击,在云端该攻击表现为,通过仿冒大量的正常服务请求来阻止用户访问其在云端数据、应用程序或网站。 1.4 清洗:本服务对进入用户的数据流量进行实时监控,及时发现包括DDoS攻击在内的异常流量。在不影响正常业务的前提下,清洗掉异常流量, 即将可疑流量从原始网络路径中重定向到净化产品上进行恶意流量的识别和剥离,还原出的合法流量回注到原网络中转发给目标系统。 1.5 DDoS防护服务:基于流量清洗、黑洞技术等方式为用户提供的DDoS攻击防护服务,用户在购买了对应流量峰值的DDoS防护服务套餐后,在被DDoS攻击时,且未超过流量峰值的情况下,用户的云服务器可正常运行。 1.6 触发清洗阈值:指的是触发流量清洗所需要的最低值,包括每秒流量,每秒报文数量,每秒HTTP请求数三个触发清洗的阈值,用户云服务器的流量超过三个中的任意一个,都会触发清洗。 1.7 流量峰值:指某一段时间内云服务器产生的流量最大值。 2 服务费用 2.1 阿里云将在阿里云官网公布云盾DDoS防护服务的计费模式、价格体系等信息。具体计费规则请您查看 www.aliyun.com 上的页面公告,且按照页面公布的当时有效的计费模式与标准为准。 2.2 在您付费之后,阿里云才开始为您提供服务。您未在下单后7天内付费的,本服务条款以及与您就服务所达成的一切行为失效。 2.3 服务期满双方愿意继续合作的,您至少应在服务期满前7天前支付续费款项,以使服务得以继续进行。如续费时阿里云对产品体系、名称或价格进行调整的,双方同意按照届时有效的新的产品体系、名称或价格履行。 2.4 阿里云保留在您未按照约定支付全部费用之前不向您提供服务和/或技术支持,或者终止服务和/或技术支持的权利,同时,阿里云保留对后付费服务中的欠费行为追究法律责任的权利。 2.5 您理解并同意,阿里云有权根据经营情况,不定期的对云盾DDoS防护服务的产品体系、名称或价格、计费模式等进行调整。阿里云将尽合理范围内的最大努力,将前述调整及变化,通过官网公告、站内通知等方式提前告知您,或提前发送至您预留的联系方式。 2.6 阿里云有权根据其自身业务推广的需要不时推出优惠活动,您完全理解,所有的优惠活动以及业务推广服务都是阿里云提供的一次性特别优惠,优惠内容不包括赠送服务项目的修改、更新及维护费用,并且赠送服务项目不可折价冲抵服务价格。 3 权利义务 3.1 您的权利、义务 3.1.1 您同意遵守本服务条款以及服务展示页面的相关管理规范及流程。您了解上述协议及规范等的内容可能会不时变更。如本服务条款的任何内容发生变动,阿里云应通过提前30天在 www.aliyun.com 的适当版面公告向您提示修改内容。如您不同意阿里云对本服务条款所做的修改,您有权停止使用阿里云的服务,此等情况下,阿里云应与您进行服务费结算(如有),并且您应将业务迁出。如您继续使用阿里云服务,则视为您接受阿里云对本服务条款相关条款所做的修改。 3.1.2 您应按照阿里云的页面提示及本服务条款的约定支付相应服务费用。 3.1.3 您承诺: 3.1.3.1 不利用本服务从事DDoS防护、DNS防护等防护售卖业务; 3.1.3.2 不得将云盾DDoS防护服务各个部分分开用于任何目的; 3.1.3.3 除阿里云明示许可外,不得修改、翻译、改编、出租、转许可、在信息网络上传播或转让阿里云提供的软件,也不得逆向工程、反编译或试图以其他方式发现阿里云提供的软件的源代码; 3.1.3.4 若阿里云的服务涉及第三方软件之许可使用的,您同意遵守相关的许可协议的约束; 3.1.3.5 您利用云盾DDoS防护服务进行防护的业务须为正常的商业、科研等符合国家法律规定的业务,不得用于从事任何非法业务,包括但不限于: 3.1.3.5.1 违反国家规定的政治宣传和/或新闻; 3.1.3.5.2 涉及国家秘密和/或安全; 3.1.3.5.3 封建迷信和/或淫秽、色情和/或教唆犯罪; 3.1.3.5.4 博彩有奖、赌博游戏、“私服”、“外挂”等非法互联网出版活动; 3.1.3.5.5 违反国家民族和宗教政策; 3.1.3.5.6 妨碍互联网运行安全; 3.1.3.5.7 侵害他人合法权益和/或其他有损于社会秩序、社会治安、公共道德的活动; 3.1.3.5.8 其他违反法律法规、部门规章或国家政策的内容。 3.1.3.6 不建立或利用有关设备、配置运行与所购服务无关的程序或进程,或者故意编写恶意代码导致大量占用阿里云云计算资源(如云盾DDoS防护服务、网络带宽、存储空间等)所组成的平台(以下简称“云平台”)中的服务器内存、CPU或者网络带宽资源,给阿里云云平台或者阿里云的其他用户的网络、服务器(包括但不限于本地及外地和国际的网络、服务器等)、产品/应用等带来严重的负荷,影响阿里云与国际互联网或者阿里云与特定网络、服务器及阿里云内部的通畅联系,或者导致阿里云云平台产品与服务或者阿里云的其他用户网站所在的服务器宕机、死机或者用户基于云平台的产品/应用不可访问等; 3.1.3.7 不进行任何破坏或试图破坏网络安全的行为(包括但不限于钓鱼,黑客,网络诈骗,网站或空间中含有或涉嫌散播:病毒、木马、恶意代码,及通过虚拟服务器对其他网站、服务器进行涉嫌攻击行为如扫描、嗅探、ARP欺骗、DDoS等); 3.1.3.8 不进行任何改变或试图改变阿里云提供的系统配置或破坏系统安全的行为; 3.1.3.9 不利用阿里云提供的服务从事损害阿里云、阿里云的关联公司或阿里巴巴集团内包括但不限于阿里巴巴、淘宝、支付宝、阿里妈妈、阿里金融等(以下统称为阿里巴巴公司)各公司、网站合法权益之行为,前述损害阿里巴巴公司、网站合法权益的行为包括但不限于违反阿里巴巴公司公布的任何服务协议/条款、管理规范、交易规则等规范内容、破坏或试图破坏阿里巴巴公司公平交易环境或正常交易秩序等; 3.1.3.10 不从事其他违法、违规或违反阿里云服务条款的行为; 3.1.3.11 如阿里云发现您违反上述条款的约定,有权根据情况采取相应的处理措施,包括但不限于立即中止服务、终止服务等。如因您违反上述保证而给阿里云(包括阿里云关联公司)或阿里云合作伙伴造成损失的,您还应自行承担一切法律责任并赔偿损失; 3.1.3.12 如果第三方机构或个人对您提出质疑或投诉,阿里云将通知您,您有责任在规定时间内进行说明并出具证明材料,如您未能提供相反证据或您逾期未能反馈的,阿里云将采取包括但不限于立即中止服务或终止服务等处理措施。因您未及时更新联系方式或联系方式不正确而致使未能联系到您的,亦视为您逾期未能反馈; 3.1.3.13 阿里云依据第3.1.3.11条、第3.1.3.12条对您采取了中止服务、终止服务等措施而给您造成任何损失的,阿里云不承担任何责任。 3.1.4 您不应在阿里云服务或平台之上安装、使用盗版软件;您对自己行为(如自行安装的软件和进行的操作)所引起的结果承担全部责任。 3.1.5 您对自己存放在阿里云云平台上的数据以及进入和管理阿里云云平台上各类产品与服务的口令、密码的完整性和保密性负责。因您维护不当或保密不当或操作不当致使上述数据、口令、密码等丢失或泄漏所引起的一切损失和后果均由您自行承担。 3.1.6 您应向阿里云提交执行本服务条款的联系人和管理用户网络及云平台上各类产品与服务的人员名单和联系方式并提供必要的协助。如以上人员发生变动,您应自行将变动后的信息进行在线更新并及时通知阿里云。因您提供的人员的信息不真实、不准确、不完整,以及因以上人员的行为或不作为而产生的结果,均由您负责。 3.1.7 您了解阿里云无法保证其所提供的服务毫无瑕疵(如阿里云安全产品并不能保证您的硬件或软件的绝对安全),但阿里云承诺不断提升服务质量及服务水平。所以您同意:即使阿里云提供的服务存在瑕疵,但上述瑕疵是当时行业技术水平所无法避免的,其将不被视为阿里云违约。您同意和阿里云一同合作解决上述瑕疵问题。 3.1.8 您应仔细阅读阿里云就云盾DDoS防护服务在阿里云网站上的服务说明,自行判断云盾DDoS防护服务与您选择适用的操作系统、云服务器等产品或服务的适配性。 3.1.9 您应依照相关操作指引进行操作。由您手动设置的部分(如您对触发清洗阈值等参数的设置)及其产生的结果由您自行负责,请您自行把握风险并谨慎操作。 3.1.10 您将在所选购套餐的流量峰值范围内享受DDoS防护服务。如攻击流量超过您所购买的流量峰值,您应及时升级至更高流量峰值套餐,否则您的云服务器可能会被攻击导致服务中断。 3.2 阿里云的权利、义务 3.2.1 阿里云应按照本服务条款的约定及产品页面的服务标准,向您提供服务。 3.2.2 服务期限内,阿里云将为您提供如下客户服务: 3.2.2.1 阿里云为付费用户提供7×24售后故障服务,并为付费用户提供有效的联系方式并保证付费用户能够联系到故障联系人。故障联系人在明确故障后及时进行反馈; 3.2.2.2 阿里云提供7*24小时的在线工单服务系统,解答客户在使用中的问题。 3.2.3 阿里云将消除您非人为操作所出现的故障,但因您的原因和/或不可抗力以及非阿里云控制范围之内的事项除外。 3.2.4 阿里云提供本服务条款规定的技术支持,但不承担由于您的原因(包括但不限于代码质量,人为管理疏漏,自身安全管理等)造成的影响和损失。 3.2.5 阿里云应严格遵守保密义务。 4 知识产权 4.1 您承认阿里云向您提供的任何资料、技术或技术支持、软件、服务等的知识产权均属于阿里云或第三方所有。除阿里云或第三方明示同意外,您无权复制、传播、转让、许可或提供他人使用上述资源,否则应承担相应的责任。 5 保密条款 5.1 保密资料指由一方向另一方披露的所有技术及非技术信息(包括但不限于产品资料,产品计划,价格,财务及营销规划,业务战略,客户信息,客户数据,研发,软件硬件,API应用数据接口,技术说明,设计,特殊公式,特殊算法等)。 5.2 本服务条款任何一方同意对获悉的对方之上述保密资料予以保密,并严格限制接触上述保密信息的员工遵守本条之保密义务。除非国家机关依法强制要求或上述保密资料已经进入公有领域外,接受保密资料的一方不得对外披露。 5.3 本服务条款双方明确认可各自用户信息和业务数据等是各自的重要资产及重点保密信息。本服务条款双方同意尽最大的努力保护上述保密信息等不被披露。一旦发现有上述保密信息泄露事件,双方应合作采取一切合理措施避免或者减轻损害后果的产生。 5.4 本条款不因本服务条款的终止而失效。 6 期限与终止 6.1 阿里云云盾DDoS防护服务自您开通服务之日起即可使用,至法律规定或本服务条款约定的终止情形出现之时终止。 6.2 发生下列情形,云盾DDoS防护服务终止: 6.2.1 双方协商一致终止; 6.2.2 由于您严重违反本服务条款(包括但不限于a.您未按照本服务条款的约定履行付款义务,及/或b.您严重违反本服务条款中所做的承诺,及/或c.您严重违反法律规定等),阿里云有权按本服务条款的相关约定单方面终止服务,并不退还您已经支付的费用; 6.2.3 如因用户网站遭遇计算机病毒、网络入侵和攻击破坏(包括但不限于DDoS)等危害网络安全事项或行为(以下统称该等行为),阿里云云盾服务将在用户所选购套餐的流量峰值范围内提供DDoS防护服务,如果超过流量峰值或超过服务说明中防护范围,为使用户免受攻击,将会占用用户的网站或服务之相关资源及可能会造成用户的网站或服务在一定时间内不可被最终用户访问(以下统称“服务不可用”),用户理解并确认,该类服务不可用为阿里云履行云盾DDoS防护服务的正常履行行为,并将不视为阿里云对相关服务的违约;如该等行为给阿里云带来危害,或影响阿里云与国际互联网或者阿里云与特定网络、服务器及阿里云内部的通畅联系,阿里云将保留在未通知用户即暂停或终止用户在阿里云其他服务的权利,而无须承担任何义务和责任。 6.2.4 阿里云由于自身经营政策的变动,提前通过提前30天发网站内公告、在网站内合适版面发通知或给您发站内通知、书面通知的方式,终止本服务条款项下的服务; 6.2.5 在业务接入高防IP后,系统显示未发生攻击的情况下,支持5天无理由退款(提交工单)。 7 违约责任 7.1 本服务条款任何一方违约均须依法承担违约责任。 7.2 如果因阿里云原因造成您连续72小时不能正常使用服务的,您可终止接受服务,但非阿里云控制之内的原因引起的除外。 7.3 在任何情况下,阿里云均不对任何间接性、后果性、惩戒性、偶然性、特殊性的损害,包括您使用阿里云服务而遭受的利润损失承担责任(即使您已被告知该等损失的可能性)。 7.4 在任何情况下,阿里云对本服务条款所承担的违约赔偿责任总额不超过向您收取的该违约行为所对应的云盾DDoS防护服务之服务费总额。 8 不可抗力 8.1 因不可抗力或者其他意外事件,使得本服务条款的履行不可能、不必要或者无意义的,遭受不可抗力、意外事件的一方不承担责任。 8.2 不可抗力、意外事件是指不能预见、不能克服并不能避免且对一方或双方当事人造成重大影响的客观事件,包括但不限于自然灾害如洪水、地震、瘟疫流行等以及社会事件如战争、动乱、政府行为、电信主干线路中断、黑客、网路堵塞、电信部门技术调整和政府管制等。 9 法律适用及争议解决 9.1 本服务条款受中华人民共和国法律管辖。 9.2 在执行本服务条款过程中如发生纠纷,双方应及时协商解决。协商不成时,任何一方可直接向杭州市西湖区人民法院提起诉讼。 10 附则 10.1.阿里云在 www.aliyun.com 相关页面上的服务说明、价格说明和您确认同意的订购页面是本服务条款不可分割的一部分,如果阿里云在 www.aliyun.com 相关页面上的服务说明、价格说明和您确认同意的订购页面与本服务条款有不一致之处,以本服务条款为准。 10.2 阿里云有权以提前30天在 www.aliyun.com 上公布或给您发站内通知或书面通知的方式将本服务条款的权利义务全部或者部分转移给阿里云的关联公司。 10.3 如果任何条款在性质上或其他方面理应地在此协议终止时继续存在,那么应视为继续存在的条款,这些条款包括但不局限于保证条款、保密条款、知识产权条款、法律适用及争议解决条款。 10.4 本服务条款项下,阿里云对您的所有通知均可通过网页公告、网站内通知、电子邮件、手机短信或书面信函等任一方式进行;该等通知于发送之日即视为已送达收件人。

2019-12-01 23:32:33 0 浏览量 回答数 0

回答

详细解答可以参考官方帮助文档本服务条款是阿里云计算有限公司(以下简称“阿里云”)与您就云盾DDoS防护服务的相关事项所订立的有效合约。您通过盖章、网络页面点击确认或以其他方式选择接受本服务条款,或实际使用阿里云提供的云盾DDoS防护服务,即表示您与阿里云已达成协议并同意接受本服务条款的全部约定内容。如若双方盖章文本与网络页面点击确认或以其他方式选择接受之服务条款文本,存有不一致之处,以双方盖章文本为准。 在接受本服务条款之前,请您仔细阅读本服务条款的全部内容(特别是以粗体及/或下划线标注的内容)。如果您对本服务条款的条款有疑问的,请通过阿里云官网(www.aliyun.com)公布的联系方式,进行询问,阿里云将向您解释条款内容。如果您不同意本服务条款的任意内容,或者无法准确理解阿里云对条款的解释,请不要进行后续操作。 1 定义 1.1 本条款中的“您”是指:所有使用阿里云云盾DDoS防护服务的主体(包括但不限于个人、团队、公司、组织等),或称“用户”。 1.2 本条款中“服务”指:阿里云向您提供 www.aliyun.com 网站上所展示的云盾DDoS防护服务以及相关的技术及网络支持服务。 1.3 DDoS: Distributed Denial of Service,即分布式拒绝服务攻击,在云端该攻击表现为,通过仿冒大量的正常服务请求来阻止用户访问其在云端数据、应用程序或网站。 1.4 清洗:本服务对进入用户的数据流量进行实时监控,及时发现包括DDoS攻击在内的异常流量。在不影响正常业务的前提下,清洗掉异常流量, 即将可疑流量从原始网络路径中重定向到净化产品上进行恶意流量的识别和剥离,还原出的合法流量回注到原网络中转发给目标系统。 1.5 DDoS防护服务:基于流量清洗、黑洞技术等方式为用户提供的DDoS攻击防护服务,用户在购买了对应流量峰值的DDoS防护服务套餐后,在被DDoS攻击时,且未超过流量峰值的情况下,用户的云服务器可正常运行。 1.6 触发清洗阈值:指的是触发流量清洗所需要的最低值,包括每秒流量,每秒报文数量,每秒HTTP请求数三个触发清洗的阈值,用户云服务器的流量超过三个中的任意一个,都会触发清洗。 1.7 流量峰值:指某一段时间内云服务器产生的流量最大值。 2 服务费用 2.1 阿里云将在阿里云官网公布云盾DDoS防护服务的计费模式、价格体系等信息。具体计费规则请您查看 www.aliyun.com 上的页面公告,且按照页面公布的当时有效的计费模式与标准为准。 2.2 在您付费之后,阿里云才开始为您提供服务。您未在下单后7天内付费的,本服务条款以及与您就服务所达成的一切行为失效。 2.3 服务期满双方愿意继续合作的,您至少应在服务期满前7天前支付续费款项,以使服务得以继续进行。如续费时阿里云对产品体系、名称或价格进行调整的,双方同意按照届时有效的新的产品体系、名称或价格履行。 2.4 阿里云保留在您未按照约定支付全部费用之前不向您提供服务和/或技术支持,或者终止服务和/或技术支持的权利,同时,阿里云保留对后付费服务中的欠费行为追究法律责任的权利。 2.5 您理解并同意,阿里云有权根据经营情况,不定期的对云盾DDoS防护服务的产品体系、名称或价格、计费模式等进行调整。阿里云将尽合理范围内的最大努力,将前述调整及变化,通过官网公告、站内通知等方式提前告知您,或提前发送至您预留的联系方式。 2.6 阿里云有权根据其自身业务推广的需要不时推出优惠活动,您完全理解,所有的优惠活动以及业务推广服务都是阿里云提供的一次性特别优惠,优惠内容不包括赠送服务项目的修改、更新及维护费用,并且赠送服务项目不可折价冲抵服务价格。 3 权利义务 3.1 您的权利、义务 3.1.1 您同意遵守本服务条款以及服务展示页面的相关管理规范及流程。您了解上述协议及规范等的内容可能会不时变更。如本服务条款的任何内容发生变动,阿里云应通过提前30天在 www.aliyun.com 的适当版面公告向您提示修改内容。如您不同意阿里云对本服务条款所做的修改,您有权停止使用阿里云的服务,此等情况下,阿里云应与您进行服务费结算(如有),并且您应将业务迁出。如您继续使用阿里云服务,则视为您接受阿里云对本服务条款相关条款所做的修改。 3.1.2 您应按照阿里云的页面提示及本服务条款的约定支付相应服务费用。 3.1.3 您承诺: 3.1.3.1 不利用本服务从事DDoS防护、DNS防护等防护售卖业务; 3.1.3.2 不得将云盾DDoS防护服务各个部分分开用于任何目的; 3.1.3.3 除阿里云明示许可外,不得修改、翻译、改编、出租、转许可、在信息网络上传播或转让阿里云提供的软件,也不得逆向工程、反编译或试图以其他方式发现阿里云提供的软件的源代码; 3.1.3.4 若阿里云的服务涉及第三方软件之许可使用的,您同意遵守相关的许可协议的约束; 3.1.3.5 您利用云盾DDoS防护服务进行防护的业务须为正常的商业、科研等符合国家法律规定的业务,不得用于从事任何非法业务,包括但不限于: 3.1.3.5.1 违反国家规定的政治宣传和/或新闻; 3.1.3.5.2 涉及国家秘密和/或安全; 3.1.3.5.3 封建迷信和/或淫秽、色情和/或教唆犯罪; 3.1.3.5.4 博彩有奖、赌博游戏、“私服”、“外挂”等非法互联网出版活动; 3.1.3.5.5 违反国家民族和宗教政策; 3.1.3.5.6 妨碍互联网运行安全; 3.1.3.5.7 侵害他人合法权益和/或其他有损于社会秩序、社会治安、公共道德的活动; 3.1.3.5.8 其他违反法律法规、部门规章或国家政策的内容。 3.1.3.6 不建立或利用有关设备、配置运行与所购服务无关的程序或进程,或者故意编写恶意代码导致大量占用阿里云云计算资源(如云盾DDoS防护服务、网络带宽、存储空间等)所组成的平台(以下简称“云平台”)中的服务器内存、CPU或者网络带宽资源,给阿里云云平台或者阿里云的其他用户的网络、服务器(包括但不限于本地及外地和国际的网络、服务器等)、产品/应用等带来严重的负荷,影响阿里云与国际互联网或者阿里云与特定网络、服务器及阿里云内部的通畅联系,或者导致阿里云云平台产品与服务或者阿里云的其他用户网站所在的服务器宕机、死机或者用户基于云平台的产品/应用不可访问等; 3.1.3.7 不进行任何破坏或试图破坏网络安全的行为(包括但不限于钓鱼,黑客,网络诈骗,网站或空间中含有或涉嫌散播:病毒、木马、恶意代码,及通过虚拟服务器对其他网站、服务器进行涉嫌攻击行为如扫描、嗅探、ARP欺骗、DDoS等); 3.1.3.8 不进行任何改变或试图改变阿里云提供的系统配置或破坏系统安全的行为; 3.1.3.9 不利用阿里云提供的服务从事损害阿里云、阿里云的关联公司或阿里巴巴集团内包括但不限于阿里巴巴、淘宝、支付宝、阿里妈妈、阿里金融等(以下统称为阿里巴巴公司)各公司、网站合法权益之行为,前述损害阿里巴巴公司、网站合法权益的行为包括但不限于违反阿里巴巴公司公布的任何服务协议/条款、管理规范、交易规则等规范内容、破坏或试图破坏阿里巴巴公司公平交易环境或正常交易秩序等; 3.1.3.10 不从事其他违法、违规或违反阿里云服务条款的行为; 3.1.3.11 如阿里云发现您违反上述条款的约定,有权根据情况采取相应的处理措施,包括但不限于立即中止服务、终止服务等。如因您违反上述保证而给阿里云(包括阿里云关联公司)或阿里云合作伙伴造成损失的,您还应自行承担一切法律责任并赔偿损失; 3.1.3.12 如果第三方机构或个人对您提出质疑或投诉,阿里云将通知您,您有责任在规定时间内进行说明并出具证明材料,如您未能提供相反证据或您逾期未能反馈的,阿里云将采取包括但不限于立即中止服务或终止服务等处理措施。因您未及时更新联系方式或联系方式不正确而致使未能联系到您的,亦视为您逾期未能反馈; 3.1.3.13 阿里云依据第3.1.3.11条、第3.1.3.12条对您采取了中止服务、终止服务等措施而给您造成任何损失的,阿里云不承担任何责任。 3.1.4 您不应在阿里云服务或平台之上安装、使用盗版软件;您对自己行为(如自行安装的软件和进行的操作)所引起的结果承担全部责任。 3.1.5 您对自己存放在阿里云云平台上的数据以及进入和管理阿里云云平台上各类产品与服务的口令、密码的完整性和保密性负责。因您维护不当或保密不当或操作不当致使上述数据、口令、密码等丢失或泄漏所引起的一切损失和后果均由您自行承担。 3.1.6 您应向阿里云提交执行本服务条款的联系人和管理用户网络及云平台上各类产品与服务的人员名单和联系方式并提供必要的协助。如以上人员发生变动,您应自行将变动后的信息进行在线更新并及时通知阿里云。因您提供的人员的信息不真实、不准确、不完整,以及因以上人员的行为或不作为而产生的结果,均由您负责。 3.1.7 您了解阿里云无法保证其所提供的服务毫无瑕疵(如阿里云安全产品并不能保证您的硬件或软件的绝对安全),但阿里云承诺不断提升服务质量及服务水平。所以您同意:即使阿里云提供的服务存在瑕疵,但上述瑕疵是当时行业技术水平所无法避免的,其将不被视为阿里云违约。您同意和阿里云一同合作解决上述瑕疵问题。 3.1.8 您应仔细阅读阿里云就云盾DDoS防护服务在阿里云网站上的服务说明,自行判断云盾DDoS防护服务与您选择适用的操作系统、云服务器等产品或服务的适配性。 3.1.9 您应依照相关操作指引进行操作。由您手动设置的部分(如您对触发清洗阈值等参数的设置)及其产生的结果由您自行负责,请您自行把握风险并谨慎操作。 3.1.10 您将在所选购套餐的流量峰值范围内享受DDoS防护服务。如攻击流量超过您所购买的流量峰值,您应及时升级至更高流量峰值套餐,否则您的云服务器可能会被攻击导致服务中断。 3.2 阿里云的权利、义务 3.2.1 阿里云应按照本服务条款的约定及产品页面的服务标准,向您提供服务。 3.2.2 服务期限内,阿里云将为您提供如下客户服务: 3.2.2.1 阿里云为付费用户提供7×24售后故障服务,并为付费用户提供有效的联系方式并保证付费用户能够联系到故障联系人。故障联系人在明确故障后及时进行反馈; 3.2.2.2 阿里云提供7*24小时的在线工单服务系统,解答客户在使用中的问题。 3.2.3 阿里云将消除您非人为操作所出现的故障,但因您的原因和/或不可抗力以及非阿里云控制范围之内的事项除外。 3.2.4 阿里云提供本服务条款规定的技术支持,但不承担由于您的原因(包括但不限于代码质量,人为管理疏漏,自身安全管理等)造成的影响和损失。 3.2.5 阿里云应严格遵守保密义务。 4 知识产权 4.1 您承认阿里云向您提供的任何资料、技术或技术支持、软件、服务等的知识产权均属于阿里云或第三方所有。除阿里云或第三方明示同意外,您无权复制、传播、转让、许可或提供他人使用上述资源,否则应承担相应的责任。 5 保密条款 5.1 保密资料指由一方向另一方披露的所有技术及非技术信息(包括但不限于产品资料,产品计划,价格,财务及营销规划,业务战略,客户信息,客户数据,研发,软件硬件,API应用数据接口,技术说明,设计,特殊公式,特殊算法等)。 5.2 本服务条款任何一方同意对获悉的对方之上述保密资料予以保密,并严格限制接触上述保密信息的员工遵守本条之保密义务。除非国家机关依法强制要求或上述保密资料已经进入公有领域外,接受保密资料的一方不得对外披露。 5.3 本服务条款双方明确认可各自用户信息和业务数据等是各自的重要资产及重点保密信息。本服务条款双方同意尽最大的努力保护上述保密信息等不被披露。一旦发现有上述保密信息泄露事件,双方应合作采取一切合理措施避免或者减轻损害后果的产生。 5.4 本条款不因本服务条款的终止而失效。 6 期限与终止 6.1 阿里云云盾DDoS防护服务自您开通服务之日起即可使用,至法律规定或本服务条款约定的终止情形出现之时终止。 6.2 发生下列情形,云盾DDoS防护服务终止: 6.2.1 双方协商一致终止; 6.2.2 由于您严重违反本服务条款(包括但不限于a.您未按照本服务条款的约定履行付款义务,及/或b.您严重违反本服务条款中所做的承诺,及/或c.您严重违反法律规定等),阿里云有权按本服务条款的相关约定单方面终止服务,并不退还您已经支付的费用; 6.2.3 如因用户网站遭遇计算机病毒、网络入侵和攻击破坏(包括但不限于DDoS)等危害网络安全事项或行为(以下统称该等行为),阿里云云盾服务将在用户所选购套餐的流量峰值范围内提供DDoS防护服务,如果超过流量峰值或超过服务说明中防护范围,为使用户免受攻击,将会占用用户的网站或服务之相关资源及可能会造成用户的网站或服务在一定时间内不可被最终用户访问(以下统称“服务不可用”),用户理解并确认,该类服务不可用为阿里云履行云盾DDoS防护服务的正常履行行为,并将不视为阿里云对相关服务的违约;如该等行为给阿里云带来危害,或影响阿里云与国际互联网或者阿里云与特定网络、服务器及阿里云内部的通畅联系,阿里云将保留在未通知用户即暂停或终止用户在阿里云其他服务的权利,而无须承担任何义务和责任。 6.2.4 阿里云由于自身经营政策的变动,提前通过提前30天发网站内公告、在网站内合适版面发通知或给您发站内通知、书面通知的方式,终止本服务条款项下的服务; 6.2.5 在业务接入高防IP后,系统显示未发生攻击的情况下,支持5天无理由退款(提交工单)。 7 违约责任 7.1 本服务条款任何一方违约均须依法承担违约责任。 7.2 如果因阿里云原因造成您连续72小时不能正常使用服务的,您可终止接受服务,但非阿里云控制之内的原因引起的除外。 7.3 在任何情况下,阿里云均不对任何间接性、后果性、惩戒性、偶然性、特殊性的损害,包括您使用阿里云服务而遭受的利润损失承担责任(即使您已被告知该等损失的可能性)。 7.4 在任何情况下,阿里云对本服务条款所承担的违约赔偿责任总额不超过向您收取的该违约行为所对应的云盾DDoS防护服务之服务费总额。 8 不可抗力 8.1 因不可抗力或者其他意外事件,使得本服务条款的履行不可能、不必要或者无意义的,遭受不可抗力、意外事件的一方不承担责任。 8.2 不可抗力、意外事件是指不能预见、不能克服并不能避免且对一方或双方当事人造成重大影响的客观事件,包括但不限于自然灾害如洪水、地震、瘟疫流行等以及社会事件如战争、动乱、政府行为、电信主干线路中断、黑客、网路堵塞、电信部门技术调整和政府管制等。 9 法律适用及争议解决 9.1 本服务条款受中华人民共和国法律管辖。 9.2 在执行本服务条款过程中如发生纠纷,双方应及时协商解决。协商不成时,任何一方可直接向杭州市西湖区人民法院提起诉讼。 10 附则 10.1.阿里云在 www.aliyun.com 相关页面上的服务说明、价格说明和您确认同意的订购页面是本服务条款不可分割的一部分,如果阿里云在 www.aliyun.com 相关页面上的服务说明、价格说明和您确认同意的订购页面与本服务条款有不一致之处,以本服务条款为准。 10.2 阿里云有权以提前30天在 www.aliyun.com 上公布或给您发站内通知或书面通知的方式将本服务条款的权利义务全部或者部分转移给阿里云的关联公司。 10.3 如果任何条款在性质上或其他方面理应地在此协议终止时继续存在,那么应视为继续存在的条款,这些条款包括但不局限于保证条款、保密条款、知识产权条款、法律适用及争议解决条款。 10.4 本服务条款项下,阿里云对您的所有通知均可通过网页公告、网站内通知、电子邮件、手机短信或书面信函等任一方式进行;该等通知于发送之日即视为已送达收件人。

2019-12-01 23:32:33 0 浏览量 回答数 0

阿里云试用中心,为您提供0门槛上云实践机会!

0元试用32+款产品,最高免费12个月!拨打95187-1,咨询专业上云建议!

回答

详细解答可以参考官方帮助文档本服务条款是阿里云计算有限公司(以下简称“阿里云”)与您就云盾DDoS防护服务的相关事项所订立的有效合约。您通过盖章、网络页面点击确认或以其他方式选择接受本服务条款,或实际使用阿里云提供的云盾DDoS防护服务,即表示您与阿里云已达成协议并同意接受本服务条款的全部约定内容。如若双方盖章文本与网络页面点击确认或以其他方式选择接受之服务条款文本,存有不一致之处,以双方盖章文本为准。 在接受本服务条款之前,请您仔细阅读本服务条款的全部内容(特别是以粗体及/或下划线标注的内容)。如果您对本服务条款的条款有疑问的,请通过阿里云官网(www.aliyun.com)公布的联系方式,进行询问,阿里云将向您解释条款内容。如果您不同意本服务条款的任意内容,或者无法准确理解阿里云对条款的解释,请不要进行后续操作。 1 定义 1.1 本条款中的“您”是指:所有使用阿里云云盾DDoS防护服务的主体(包括但不限于个人、团队、公司、组织等),或称“用户”。 1.2 本条款中“服务”指:阿里云向您提供 www.aliyun.com 网站上所展示的云盾DDoS防护服务以及相关的技术及网络支持服务。 1.3 DDoS: Distributed Denial of Service,即分布式拒绝服务攻击,在云端该攻击表现为,通过仿冒大量的正常服务请求来阻止用户访问其在云端数据、应用程序或网站。 1.4 清洗:本服务对进入用户的数据流量进行实时监控,及时发现包括DDoS攻击在内的异常流量。在不影响正常业务的前提下,清洗掉异常流量, 即将可疑流量从原始网络路径中重定向到净化产品上进行恶意流量的识别和剥离,还原出的合法流量回注到原网络中转发给目标系统。 1.5 DDoS防护服务:基于流量清洗、黑洞技术等方式为用户提供的DDoS攻击防护服务,用户在购买了对应流量峰值的DDoS防护服务套餐后,在被DDoS攻击时,且未超过流量峰值的情况下,用户的云服务器可正常运行。 1.6 触发清洗阈值:指的是触发流量清洗所需要的最低值,包括每秒流量,每秒报文数量,每秒HTTP请求数三个触发清洗的阈值,用户云服务器的流量超过三个中的任意一个,都会触发清洗。 1.7 流量峰值:指某一段时间内云服务器产生的流量最大值。 2 服务费用 2.1 阿里云将在阿里云官网公布云盾DDoS防护服务的计费模式、价格体系等信息。具体计费规则请您查看 www.aliyun.com 上的页面公告,且按照页面公布的当时有效的计费模式与标准为准。 2.2 在您付费之后,阿里云才开始为您提供服务。您未在下单后7天内付费的,本服务条款以及与您就服务所达成的一切行为失效。 2.3 服务期满双方愿意继续合作的,您至少应在服务期满前7天前支付续费款项,以使服务得以继续进行。如续费时阿里云对产品体系、名称或价格进行调整的,双方同意按照届时有效的新的产品体系、名称或价格履行。 2.4 阿里云保留在您未按照约定支付全部费用之前不向您提供服务和/或技术支持,或者终止服务和/或技术支持的权利,同时,阿里云保留对后付费服务中的欠费行为追究法律责任的权利。 2.5 您理解并同意,阿里云有权根据经营情况,不定期的对云盾DDoS防护服务的产品体系、名称或价格、计费模式等进行调整。阿里云将尽合理范围内的最大努力,将前述调整及变化,通过官网公告、站内通知等方式提前告知您,或提前发送至您预留的联系方式。 2.6 阿里云有权根据其自身业务推广的需要不时推出优惠活动,您完全理解,所有的优惠活动以及业务推广服务都是阿里云提供的一次性特别优惠,优惠内容不包括赠送服务项目的修改、更新及维护费用,并且赠送服务项目不可折价冲抵服务价格。 3 权利义务 3.1 您的权利、义务 3.1.1 您同意遵守本服务条款以及服务展示页面的相关管理规范及流程。您了解上述协议及规范等的内容可能会不时变更。如本服务条款的任何内容发生变动,阿里云应通过提前30天在 www.aliyun.com 的适当版面公告向您提示修改内容。如您不同意阿里云对本服务条款所做的修改,您有权停止使用阿里云的服务,此等情况下,阿里云应与您进行服务费结算(如有),并且您应将业务迁出。如您继续使用阿里云服务,则视为您接受阿里云对本服务条款相关条款所做的修改。 3.1.2 您应按照阿里云的页面提示及本服务条款的约定支付相应服务费用。 3.1.3 您承诺: 3.1.3.1 不利用本服务从事DDoS防护、DNS防护等防护售卖业务; 3.1.3.2 不得将云盾DDoS防护服务各个部分分开用于任何目的; 3.1.3.3 除阿里云明示许可外,不得修改、翻译、改编、出租、转许可、在信息网络上传播或转让阿里云提供的软件,也不得逆向工程、反编译或试图以其他方式发现阿里云提供的软件的源代码; 3.1.3.4 若阿里云的服务涉及第三方软件之许可使用的,您同意遵守相关的许可协议的约束; 3.1.3.5 您利用云盾DDoS防护服务进行防护的业务须为正常的商业、科研等符合国家法律规定的业务,不得用于从事任何非法业务,包括但不限于: 3.1.3.5.1 违反国家规定的政治宣传和/或新闻; 3.1.3.5.2 涉及国家秘密和/或安全; 3.1.3.5.3 封建迷信和/或淫秽、色情和/或教唆犯罪; 3.1.3.5.4 博彩有奖、赌博游戏、“私服”、“外挂”等非法互联网出版活动; 3.1.3.5.5 违反国家民族和宗教政策; 3.1.3.5.6 妨碍互联网运行安全; 3.1.3.5.7 侵害他人合法权益和/或其他有损于社会秩序、社会治安、公共道德的活动; 3.1.3.5.8 其他违反法律法规、部门规章或国家政策的内容。 3.1.3.6 不建立或利用有关设备、配置运行与所购服务无关的程序或进程,或者故意编写恶意代码导致大量占用阿里云云计算资源(如云盾DDoS防护服务、网络带宽、存储空间等)所组成的平台(以下简称“云平台”)中的服务器内存、CPU或者网络带宽资源,给阿里云云平台或者阿里云的其他用户的网络、服务器(包括但不限于本地及外地和国际的网络、服务器等)、产品/应用等带来严重的负荷,影响阿里云与国际互联网或者阿里云与特定网络、服务器及阿里云内部的通畅联系,或者导致阿里云云平台产品与服务或者阿里云的其他用户网站所在的服务器宕机、死机或者用户基于云平台的产品/应用不可访问等; 3.1.3.7 不进行任何破坏或试图破坏网络安全的行为(包括但不限于钓鱼,黑客,网络诈骗,网站或空间中含有或涉嫌散播:病毒、木马、恶意代码,及通过虚拟服务器对其他网站、服务器进行涉嫌攻击行为如扫描、嗅探、ARP欺骗、DDoS等); 3.1.3.8 不进行任何改变或试图改变阿里云提供的系统配置或破坏系统安全的行为; 3.1.3.9 不利用阿里云提供的服务从事损害阿里云、阿里云的关联公司或阿里巴巴集团内包括但不限于阿里巴巴、淘宝、支付宝、阿里妈妈、阿里金融等(以下统称为阿里巴巴公司)各公司、网站合法权益之行为,前述损害阿里巴巴公司、网站合法权益的行为包括但不限于违反阿里巴巴公司公布的任何服务协议/条款、管理规范、交易规则等规范内容、破坏或试图破坏阿里巴巴公司公平交易环境或正常交易秩序等; 3.1.3.10 不从事其他违法、违规或违反阿里云服务条款的行为; 3.1.3.11 如阿里云发现您违反上述条款的约定,有权根据情况采取相应的处理措施,包括但不限于立即中止服务、终止服务等。如因您违反上述保证而给阿里云(包括阿里云关联公司)或阿里云合作伙伴造成损失的,您还应自行承担一切法律责任并赔偿损失; 3.1.3.12 如果第三方机构或个人对您提出质疑或投诉,阿里云将通知您,您有责任在规定时间内进行说明并出具证明材料,如您未能提供相反证据或您逾期未能反馈的,阿里云将采取包括但不限于立即中止服务或终止服务等处理措施。因您未及时更新联系方式或联系方式不正确而致使未能联系到您的,亦视为您逾期未能反馈; 3.1.3.13 阿里云依据第3.1.3.11条、第3.1.3.12条对您采取了中止服务、终止服务等措施而给您造成任何损失的,阿里云不承担任何责任。 3.1.4 您不应在阿里云服务或平台之上安装、使用盗版软件;您对自己行为(如自行安装的软件和进行的操作)所引起的结果承担全部责任。 3.1.5 您对自己存放在阿里云云平台上的数据以及进入和管理阿里云云平台上各类产品与服务的口令、密码的完整性和保密性负责。因您维护不当或保密不当或操作不当致使上述数据、口令、密码等丢失或泄漏所引起的一切损失和后果均由您自行承担。 3.1.6 您应向阿里云提交执行本服务条款的联系人和管理用户网络及云平台上各类产品与服务的人员名单和联系方式并提供必要的协助。如以上人员发生变动,您应自行将变动后的信息进行在线更新并及时通知阿里云。因您提供的人员的信息不真实、不准确、不完整,以及因以上人员的行为或不作为而产生的结果,均由您负责。 3.1.7 您了解阿里云无法保证其所提供的服务毫无瑕疵(如阿里云安全产品并不能保证您的硬件或软件的绝对安全),但阿里云承诺不断提升服务质量及服务水平。所以您同意:即使阿里云提供的服务存在瑕疵,但上述瑕疵是当时行业技术水平所无法避免的,其将不被视为阿里云违约。您同意和阿里云一同合作解决上述瑕疵问题。 3.1.8 您应仔细阅读阿里云就云盾DDoS防护服务在阿里云网站上的服务说明,自行判断云盾DDoS防护服务与您选择适用的操作系统、云服务器等产品或服务的适配性。 3.1.9 您应依照相关操作指引进行操作。由您手动设置的部分(如您对触发清洗阈值等参数的设置)及其产生的结果由您自行负责,请您自行把握风险并谨慎操作。 3.1.10 您将在所选购套餐的流量峰值范围内享受DDoS防护服务。如攻击流量超过您所购买的流量峰值,您应及时升级至更高流量峰值套餐,否则您的云服务器可能会被攻击导致服务中断。 3.2 阿里云的权利、义务 3.2.1 阿里云应按照本服务条款的约定及产品页面的服务标准,向您提供服务。 3.2.2 服务期限内,阿里云将为您提供如下客户服务: 3.2.2.1 阿里云为付费用户提供7×24售后故障服务,并为付费用户提供有效的联系方式并保证付费用户能够联系到故障联系人。故障联系人在明确故障后及时进行反馈; 3.2.2.2 阿里云提供7*24小时的在线工单服务系统,解答客户在使用中的问题。 3.2.3 阿里云将消除您非人为操作所出现的故障,但因您的原因和/或不可抗力以及非阿里云控制范围之内的事项除外。 3.2.4 阿里云提供本服务条款规定的技术支持,但不承担由于您的原因(包括但不限于代码质量,人为管理疏漏,自身安全管理等)造成的影响和损失。 3.2.5 阿里云应严格遵守保密义务。 4 知识产权 4.1 您承认阿里云向您提供的任何资料、技术或技术支持、软件、服务等的知识产权均属于阿里云或第三方所有。除阿里云或第三方明示同意外,您无权复制、传播、转让、许可或提供他人使用上述资源,否则应承担相应的责任。 5 保密条款 5.1 保密资料指由一方向另一方披露的所有技术及非技术信息(包括但不限于产品资料,产品计划,价格,财务及营销规划,业务战略,客户信息,客户数据,研发,软件硬件,API应用数据接口,技术说明,设计,特殊公式,特殊算法等)。 5.2 本服务条款任何一方同意对获悉的对方之上述保密资料予以保密,并严格限制接触上述保密信息的员工遵守本条之保密义务。除非国家机关依法强制要求或上述保密资料已经进入公有领域外,接受保密资料的一方不得对外披露。 5.3 本服务条款双方明确认可各自用户信息和业务数据等是各自的重要资产及重点保密信息。本服务条款双方同意尽最大的努力保护上述保密信息等不被披露。一旦发现有上述保密信息泄露事件,双方应合作采取一切合理措施避免或者减轻损害后果的产生。 5.4 本条款不因本服务条款的终止而失效。 6 期限与终止 6.1 阿里云云盾DDoS防护服务自您开通服务之日起即可使用,至法律规定或本服务条款约定的终止情形出现之时终止。 6.2 发生下列情形,云盾DDoS防护服务终止: 6.2.1 双方协商一致终止; 6.2.2 由于您严重违反本服务条款(包括但不限于a.您未按照本服务条款的约定履行付款义务,及/或b.您严重违反本服务条款中所做的承诺,及/或c.您严重违反法律规定等),阿里云有权按本服务条款的相关约定单方面终止服务,并不退还您已经支付的费用; 6.2.3 如因用户网站遭遇计算机病毒、网络入侵和攻击破坏(包括但不限于DDoS)等危害网络安全事项或行为(以下统称该等行为),阿里云云盾服务将在用户所选购套餐的流量峰值范围内提供DDoS防护服务,如果超过流量峰值或超过服务说明中防护范围,为使用户免受攻击,将会占用用户的网站或服务之相关资源及可能会造成用户的网站或服务在一定时间内不可被最终用户访问(以下统称“服务不可用”),用户理解并确认,该类服务不可用为阿里云履行云盾DDoS防护服务的正常履行行为,并将不视为阿里云对相关服务的违约;如该等行为给阿里云带来危害,或影响阿里云与国际互联网或者阿里云与特定网络、服务器及阿里云内部的通畅联系,阿里云将保留在未通知用户即暂停或终止用户在阿里云其他服务的权利,而无须承担任何义务和责任。 6.2.4 阿里云由于自身经营政策的变动,提前通过提前30天发网站内公告、在网站内合适版面发通知或给您发站内通知、书面通知的方式,终止本服务条款项下的服务; 6.2.5 在业务接入高防IP后,系统显示未发生攻击的情况下,支持5天无理由退款(提交工单)。 7 违约责任 7.1 本服务条款任何一方违约均须依法承担违约责任。 7.2 如果因阿里云原因造成您连续72小时不能正常使用服务的,您可终止接受服务,但非阿里云控制之内的原因引起的除外。 7.3 在任何情况下,阿里云均不对任何间接性、后果性、惩戒性、偶然性、特殊性的损害,包括您使用阿里云服务而遭受的利润损失承担责任(即使您已被告知该等损失的可能性)。 7.4 在任何情况下,阿里云对本服务条款所承担的违约赔偿责任总额不超过向您收取的该违约行为所对应的云盾DDoS防护服务之服务费总额。 8 不可抗力 8.1 因不可抗力或者其他意外事件,使得本服务条款的履行不可能、不必要或者无意义的,遭受不可抗力、意外事件的一方不承担责任。 8.2 不可抗力、意外事件是指不能预见、不能克服并不能避免且对一方或双方当事人造成重大影响的客观事件,包括但不限于自然灾害如洪水、地震、瘟疫流行等以及社会事件如战争、动乱、政府行为、电信主干线路中断、黑客、网路堵塞、电信部门技术调整和政府管制等。 9 法律适用及争议解决 9.1 本服务条款受中华人民共和国法律管辖。 9.2 在执行本服务条款过程中如发生纠纷,双方应及时协商解决。协商不成时,任何一方可直接向杭州市西湖区人民法院提起诉讼。 10 附则 10.1.阿里云在 www.aliyun.com 相关页面上的服务说明、价格说明和您确认同意的订购页面是本服务条款不可分割的一部分,如果阿里云在 www.aliyun.com 相关页面上的服务说明、价格说明和您确认同意的订购页面与本服务条款有不一致之处,以本服务条款为准。 10.2 阿里云有权以提前30天在 www.aliyun.com 上公布或给您发站内通知或书面通知的方式将本服务条款的权利义务全部或者部分转移给阿里云的关联公司。 10.3 如果任何条款在性质上或其他方面理应地在此协议终止时继续存在,那么应视为继续存在的条款,这些条款包括但不局限于保证条款、保密条款、知识产权条款、法律适用及争议解决条款。 10.4 本服务条款项下,阿里云对您的所有通知均可通过网页公告、网站内通知、电子邮件、手机短信或书面信函等任一方式进行;该等通知于发送之日即视为已送达收件人。

2019-12-01 23:32:33 0 浏览量 回答数 0

回答

92题 一般来说,建立INDEX有以下益处:提高查询效率;建立唯一索引以保证数据的唯一性;设计INDEX避免排序。 缺点,INDEX的维护有以下开销:叶节点的‘分裂’消耗;INSERT、DELETE和UPDATE操作在INDEX上的维护开销;有存储要求;其他日常维护的消耗:对恢复的影响,重组的影响。 需要建立索引的情况:为了建立分区数据库的PATITION INDEX必须建立; 为了保证数据约束性需要而建立的INDEX必须建立; 为了提高查询效率,则考虑建立(是否建立要考虑相关性能及维护开销); 考虑在使用UNION,DISTINCT,GROUP BY,ORDER BY等字句的列上加索引。 91题 作用:加快查询速度。原则:(1) 如果某属性或属性组经常出现在查询条件中,考虑为该属性或属性组建立索引;(2) 如果某个属性常作为最大值和最小值等聚集函数的参数,考虑为该属性建立索引;(3) 如果某属性经常出现在连接操作的连接条件中,考虑为该属性或属性组建立索引。 90题 快照Snapshot是一个文件系统在特定时间里的镜像,对于在线实时数据备份非常有用。快照对于拥有不能停止的应用或具有常打开文件的文件系统的备份非常重要。对于只能提供一个非常短的备份时间而言,快照能保证系统的完整性。 89题 游标用于定位结果集的行,通过判断全局变量@@FETCH_STATUS可以判断是否到了最后,通常此变量不等于0表示出错或到了最后。 88题 事前触发器运行于触发事件发生之前,而事后触发器运行于触发事件发生之后。通常事前触发器可以获取事件之前和新的字段值。语句级触发器可以在语句执行前或后执行,而行级触发在触发器所影响的每一行触发一次。 87题 MySQL可以使用多个字段同时建立一个索引,叫做联合索引。在联合索引中,如果想要命中索引,需要按照建立索引时的字段顺序挨个使用,否则无法命中索引。具体原因为:MySQL使用索引时需要索引有序,假设现在建立了"name,age,school"的联合索引,那么索引的排序为: 先按照name排序,如果name相同,则按照age排序,如果age的值也相等,则按照school进行排序。因此在建立联合索引的时候应该注意索引列的顺序,一般情况下,将查询需求频繁或者字段选择性高的列放在前面。此外可以根据特例的查询或者表结构进行单独的调整。 86题 建立索引的时候一般要考虑到字段的使用频率,经常作为条件进行查询的字段比较适合。如果需要建立联合索引的话,还需要考虑联合索引中的顺序。此外也要考虑其他方面,比如防止过多的所有对表造成太大的压力。这些都和实际的表结构以及查询方式有关。 85题 存储过程是一组Transact-SQL语句,在一次编译后可以执行多次。因为不必重新编译Transact-SQL语句,所以执行存储过程可以提高性能。触发器是一种特殊类型的存储过程,不由用户直接调用。创建触发器时会对其进行定义,以便在对特定表或列作特定类型的数据修改时执行。 84题 存储过程是用户定义的一系列SQL语句的集合,涉及特定表或其它对象的任务,用户可以调用存储过程,而函数通常是数据库已定义的方法,它接收参数并返回某种类型的值并且不涉及特定用户表。 83题 减少表连接,减少复杂 SQL,拆分成简单SQL。减少排序:非必要不排序,利用索引排序,减少参与排序的记录数。尽量避免 select *。尽量用 join 代替子查询。尽量少使用 or,使用 in 或者 union(union all) 代替。尽量用 union all 代替 union。尽量早的将无用数据过滤:选择更优的索引,先分页再Join…。避免类型转换:索引失效。优先优化高并发的 SQL,而不是执行频率低某些“大”SQL。从全局出发优化,而不是片面调整。尽可能对每一条SQL进行 explain。 82题 如果条件中有or,即使其中有条件带索引也不会使用(要想使用or,又想让索引生效,只能将or条件中的每个列都加上索引)。对于多列索引,不是使用的第一部分,则不会使用索引。like查询是以%开头。如果列类型是字符串,那一定要在条件中将数据使用引号引用起来,否则不使用索引。如果mysql估计使用全表扫描要比使用索引快,则不使用索引。例如,使用<>、not in 、not exist,对于这三种情况大多数情况下认为结果集很大,MySQL就有可能不使用索引。 81题 主键不能重复,不能为空,唯一键不能重复,可以为空。建立主键的目的是让外键来引用。一个表最多只有一个主键,但可以有很多唯一键。 80题 空值('')是不占用空间的,判断空字符用=''或者<>''来进行处理。NULL值是未知的,且占用空间,不走索引;判断 NULL 用 IS NULL 或者 is not null ,SQL 语句函数中可以使用 ifnull ()函数来进行处理。无法比较 NULL 和 0;它们是不等价的。无法使用比较运算符来测试 NULL 值,比如 =, <, 或者 <>。NULL 值可以使用 <=> 符号进行比较,该符号与等号作用相似,但对NULL有意义。进行 count ()统计某列的记录数的时候,如果采用的 NULL 值,会被系统自动忽略掉,但是空值是统计到其中。 79题 HEAP表是访问数据速度最快的MySQL表,他使用保存在内存中的散列索引。一旦服务器重启,所有heap表数据丢失。BLOB或TEXT字段是不允许的。只能使用比较运算符=,<,>,=>,= <。HEAP表不支持AUTO_INCREMENT。索引不可为NULL。 78题 如果想输入字符为十六进制数字,可以输入带有单引号的十六进制数字和前缀(X),或者只用(Ox)前缀输入十六进制数字。如果表达式上下文是字符串,则十六进制数字串将自动转换为字符串。 77题 Mysql服务器通过权限表来控制用户对数据库的访问,权限表存放在mysql数据库里,由mysql_install_db脚本初始化。这些权限表分别user,db,table_priv,columns_priv和host。 76题 在缺省模式下,MYSQL是autocommit模式的,所有的数据库更新操作都会即时提交,所以在缺省情况下,mysql是不支持事务的。但是如果你的MYSQL表类型是使用InnoDB Tables 或 BDB tables的话,你的MYSQL就可以使用事务处理,使用SET AUTOCOMMIT=0就可以使MYSQL允许在非autocommit模式,在非autocommit模式下,你必须使用COMMIT来提交你的更改,或者用ROLLBACK来回滚你的更改。 75题 它会停止递增,任何进一步的插入都将产生错误,因为密钥已被使用。 74题 创建索引的时候尽量使用唯一性大的列来创建索引,由于使用b+tree做为索引,以innodb为例,一个树节点的大小由“innodb_page_size”,为了减少树的高度,同时让一个节点能存放更多的值,索引列尽量在整数类型上创建,如果必须使用字符类型,也应该使用长度较少的字符类型。 73题 当MySQL单表记录数过大时,数据库的CRUD性能会明显下降,一些常见的优化措施如下: 限定数据的范围: 务必禁止不带任何限制数据范围条件的查询语句。比如:我们当用户在查询订单历史的时候,我们可以控制在一个月的范围内。读/写分离: 经典的数据库拆分方案,主库负责写,从库负责读。垂直分区: 根据数据库里面数据表的相关性进行拆分。简单来说垂直拆分是指数据表列的拆分,把一张列比较多的表拆分为多张表。水平分区: 保持数据表结构不变,通过某种策略存储数据分片。这样每一片数据分散到不同的表或者库中,达到了分布式的目的。水平拆分可以支撑非常大的数据量。 72题 乐观锁失败后会抛出ObjectOptimisticLockingFailureException,那么我们就针对这块考虑一下重试,自定义一个注解,用于做切面。针对注解进行切面,设置最大重试次数n,然后超过n次后就不再重试。 71题 一致性非锁定读讲的是一条记录被加了X锁其他事务仍然可以读而不被阻塞,是通过innodb的行多版本实现的,行多版本并不是实际存储多个版本记录而是通过undo实现(undo日志用来记录数据修改前的版本,回滚时会用到,用来保证事务的原子性)。一致性锁定读讲的是我可以通过SELECT语句显式地给一条记录加X锁从而保证特定应用场景下的数据一致性。 70题 数据库引擎:尤其是mysql数据库只有是InnoDB引擎的时候事物才能生效。 show engines 查看数据库默认引擎;SHOW TABLE STATUS from 数据库名字 where Name='表名' 如下;SHOW TABLE STATUS from rrz where Name='rrz_cust';修改表的引擎alter table table_name engine=innodb。 69题 如果是等值查询,那么哈希索引明显有绝对优势,因为只需要经过一次算法即可找到相应的键值;当然了,这个前提是,键值都是唯一的。如果键值不是唯一的,就需要先找到该键所在位置,然后再根据链表往后扫描,直到找到相应的数据;如果是范围查询检索,这时候哈希索引就毫无用武之地了,因为原先是有序的键值,经过哈希算法后,有可能变成不连续的了,就没办法再利用索引完成范围查询检索;同理,哈希索引也没办法利用索引完成排序,以及like ‘xxx%’ 这样的部分模糊查询(这种部分模糊查询,其实本质上也是范围查询);哈希索引也不支持多列联合索引的最左匹配规则;B+树索引的关键字检索效率比较平均,不像B树那样波动幅度大,在有大量重复键值情况下,哈希索引的效率也是极低的,因为存在所谓的哈希碰撞问题。 68题 decimal精度比float高,数据处理比float简单,一般优先考虑,但float存储的数据范围大,所以范围大的数据就只能用它了,但要注意一些处理细节,因为不精确可能会与自己想的不一致,也常有关于float 出错的问题。 67题 datetime、timestamp精确度都是秒,datetime与时区无关,存储的范围广(1001-9999),timestamp与时区有关,存储的范围小(1970-2038)。 66题 Char使用固定长度的空间进行存储,char(4)存储4个字符,根据编码方式的不同占用不同的字节,gbk编码方式,不论是中文还是英文,每个字符占用2个字节的空间,utf8编码方式,每个字符占用3个字节的空间。Varchar保存可变长度的字符串,使用额外的一个或两个字节存储字符串长度,varchar(10),除了需要存储10个字符,还需要1个字节存储长度信息(10),超过255的长度需要2个字节来存储。char和varchar后面如果有空格,char会自动去掉空格后存储,varchar虽然不会去掉空格,但在进行字符串比较时,会去掉空格进行比较。Varbinary保存变长的字符串,后面不会补\0。 65题 首先分析语句,看看是否load了额外的数据,可能是查询了多余的行并且抛弃掉了,可能是加载了许多结果中并不需要的列,对语句进行分析以及重写。分析语句的执行计划,然后获得其使用索引的情况,之后修改语句或者修改索引,使得语句可以尽可能的命中索引。如果对语句的优化已经无法进行,可以考虑表中的数据量是否太大,如果是的话可以进行横向或者纵向的分表。 64题 建立索引的时候一般要考虑到字段的使用频率,经常作为条件进行查询的字段比较适合。如果需要建立联合索引的话,还需要考虑联合索引中的顺序。此外也要考虑其他方面,比如防止过多的所有对表造成太大的压力。这些都和实际的表结构以及查询方式有关。 63题 存储过程是一些预编译的SQL语句。1、更加直白的理解:存储过程可以说是一个记录集,它是由一些T-SQL语句组成的代码块,这些T-SQL语句代码像一个方法一样实现一些功能(对单表或多表的增删改查),然后再给这个代码块取一个名字,在用到这个功能的时候调用他就行了。2、存储过程是一个预编译的代码块,执行效率比较高,一个存储过程替代大量T_SQL语句 ,可以降低网络通信量,提高通信速率,可以一定程度上确保数据安全。 62题 密码散列、盐、用户身份证号等固定长度的字符串应该使用char而不是varchar来存储,这样可以节省空间且提高检索效率。 61题 推荐使用自增ID,不要使用UUID。因为在InnoDB存储引擎中,主键索引是作为聚簇索引存在的,也就是说,主键索引的B+树叶子节点上存储了主键索引以及全部的数据(按照顺序),如果主键索引是自增ID,那么只需要不断向后排列即可,如果是UUID,由于到来的ID与原来的大小不确定,会造成非常多的数据插入,数据移动,然后导致产生很多的内存碎片,进而造成插入性能的下降。总之,在数据量大一些的情况下,用自增主键性能会好一些。 60题 char是一个定长字段,假如申请了char(10)的空间,那么无论实际存储多少内容。该字段都占用10个字符,而varchar是变长的,也就是说申请的只是最大长度,占用的空间为实际字符长度+1,最后一个字符存储使用了多长的空间。在检索效率上来讲,char > varchar,因此在使用中,如果确定某个字段的值的长度,可以使用char,否则应该尽量使用varchar。例如存储用户MD5加密后的密码,则应该使用char。 59题 一. read uncommitted(读取未提交数据) 即便是事务没有commit,但是我们仍然能读到未提交的数据,这是所有隔离级别中最低的一种。 二. read committed(可以读取其他事务提交的数据)---大多数数据库默认的隔离级别 当前会话只能读取到其他事务提交的数据,未提交的数据读不到。 三. repeatable read(可重读)---MySQL默认的隔离级别 当前会话可以重复读,就是每次读取的结果集都相同,而不管其他事务有没有提交。 四. serializable(串行化) 其他会话对该表的写操作将被挂起。可以看到,这是隔离级别中最严格的,但是这样做势必对性能造成影响。所以在实际的选用上,我们要根据当前具体的情况选用合适的。 58题 B+树的高度一般为2-4层,所以查找记录时最多只需要2-4次IO,相对二叉平衡树已经大大降低了。范围查找时,能通过叶子节点的指针获取数据。例如查找大于等于3的数据,当在叶子节点中查到3时,通过3的尾指针便能获取所有数据,而不需要再像二叉树一样再获取到3的父节点。 57题 因为事务在修改页时,要先记 undo,在记 undo 之前要记 undo 的 redo, 然后修改数据页,再记数据页修改的 redo。 Redo(里面包括 undo 的修改) 一定要比数据页先持久化到磁盘。 当事务需要回滚时,因为有 undo,可以把数据页回滚到前镜像的状态,崩溃恢复时,如果 redo log 中事务没有对应的 commit 记录,那么需要用 undo把该事务的修改回滚到事务开始之前。 如果有 commit 记录,就用 redo 前滚到该事务完成时并提交掉。 56题 redo log是物理日志,记录的是"在某个数据页上做了什么修改"。 binlog是逻辑日志,记录的是这个语句的原始逻辑,比如"给ID=2这一行的c字段加1"。 redo log是InnoDB引擎特有的;binlog是MySQL的Server层实现的,所有引擎都可以使用。 redo log是循环写的,空间固定会用完:binlog 是可以追加写入的。"追加写"是指binlog文件写到一定大小后会切换到下一个,并不会覆盖以前的日志。 最开始 MySQL 里并没有 InnoDB 引擎,MySQL 自带的引擎是 MyISAM,但是 MyISAM 没有 crash-safe 的能力,binlog日志只能用于归档。而InnoDB 是另一个公司以插件形式引入 MySQL 的,既然只依靠 binlog 是没有 crash-safe 能力的,所以 InnoDB 使用另外一套日志系统,也就是 redo log 来实现 crash-safe 能力。 55题 重做日志(redo log)      作用:确保事务的持久性,防止在发生故障,脏页未写入磁盘。重启数据库会进行redo log执行重做,达到事务一致性。 回滚日志(undo log)  作用:保证数据的原子性,保存了事务发生之前的数据的一个版本,可以用于回滚,同时可以提供多版本并发控制下的读(MVCC),也即非锁定读。 二进 制日志(binlog)    作用:用于主从复制,实现主从同步;用于数据库的基于时间点的还原。 错误日志(errorlog) 作用:Mysql本身启动,停止,运行期间发生的错误信息。 慢查询日志(slow query log)  作用:记录执行时间过长的sql,时间阈值可以配置,只记录执行成功。 一般查询日志(general log)    作用:记录数据库的操作明细,默认关闭,开启后会降低数据库性能 。 中继日志(relay log) 作用:用于数据库主从同步,将主库发来的bin log保存在本地,然后从库进行回放。 54题 MySQL有三种锁的级别:页级、表级、行级。 表级锁:开销小,加锁快;不会出现死锁;锁定粒度大,发生锁冲突的概率最高,并发度最低。 行级锁:开销大,加锁慢;会出现死锁;锁定粒度最小,发生锁冲突的概率最低,并发度也最高。 页面锁:开销和加锁时间界于表锁和行锁之间;会出现死锁;锁定粒度界于表锁和行锁之间,并发度一般。 死锁: 是指两个或两个以上的进程在执行过程中。因争夺资源而造成的一种互相等待的现象,若无外力作用,它们都将无法推进下去。 死锁的关键在于:两个(或以上)的Session加锁的顺序不一致。 那么对应的解决死锁问题的关键就是:让不同的session加锁有次序。死锁的解决办法:1.查出的线程杀死。2.设置锁的超时时间。3.指定获取锁的顺序。 53题 当多个用户并发地存取数据时,在数据库中就会产生多个事务同时存取同一数据的情况。若对并发操作不加控制就可能会读取和存储不正确的数据,破坏数据库的一致性(脏读,不可重复读,幻读等),可能产生死锁。 乐观锁:乐观锁不是数据库自带的,需要我们自己去实现。 悲观锁:在进行每次操作时都要通过获取锁才能进行对相同数据的操作。 共享锁:加了共享锁的数据对象可以被其他事务读取,但不能修改。 排他锁:当数据对象被加上排它锁时,一个事务必须得到锁才能对该数据对象进行访问,一直到事务结束锁才被释放。 行锁:就是给某一条记录加上锁。 52题 Mysql是关系型数据库,MongoDB是非关系型数据库,数据存储结构的不同。 51题 关系型数据库优点:1.保持数据的一致性(事务处理)。 2.由于以标准化为前提,数据更新的开销很小。 3. 可以进行Join等复杂查询。 缺点:1、为了维护一致性所付出的巨大代价就是其读写性能比较差。 2、固定的表结构。 3、高并发读写需求。 4、海量数据的高效率读写。 非关系型数据库优点:1、无需经过sql层的解析,读写性能很高。 2、基于键值对,数据没有耦合性,容易扩展。 3、存储数据的格式:nosql的存储格式是key,value形式、文档形式、图片形式等等,文档形式、图片形式等等,而关系型数据库则只支持基础类型。 缺点:1、不提供sql支持,学习和使用成本较高。 2、无事务处理,附加功能bi和报表等支持也不好。 redis与mongoDB的区别: 性能:TPS方面redis要大于mongodb。 可操作性:mongodb支持丰富的数据表达,索引,redis较少的网络IO次数。 可用性:MongoDB优于Redis。 一致性:redis事务支持比较弱,mongoDB不支持事务。 数据分析:mongoDB内置了数据分析的功能(mapreduce)。 应用场景:redis数据量较小的更性能操作和运算上,MongoDB主要解决海量数据的访问效率问题。 50题 如果Redis被当做缓存使用,使用一致性哈希实现动态扩容缩容。如果Redis被当做一个持久化存储使用,必须使用固定的keys-to-nodes映射关系,节点的数量一旦确定不能变化。否则的话(即Redis节点需要动态变化的情况),必须使用可以在运行时进行数据再平衡的一套系统,而当前只有Redis集群可以做到这样。 49题 分区可以让Redis管理更大的内存,Redis将可以使用所有机器的内存。如果没有分区,你最多只能使用一台机器的内存。分区使Redis的计算能力通过简单地增加计算机得到成倍提升,Redis的网络带宽也会随着计算机和网卡的增加而成倍增长。 48题 除了缓存服务器自带的缓存失效策略之外(Redis默认的有6种策略可供选择),我们还可以根据具体的业务需求进行自定义的缓存淘汰,常见的策略有两种: 1.定时去清理过期的缓存; 2.当有用户请求过来时,再判断这个请求所用到的缓存是否过期,过期的话就去底层系统得到新数据并更新缓存。 两者各有优劣,第一种的缺点是维护大量缓存的key是比较麻烦的,第二种的缺点就是每次用户请求过来都要判断缓存失效,逻辑相对比较复杂!具体用哪种方案,可以根据应用场景来权衡。 47题 Redis提供了两种方式来作消息队列: 一个是使用生产者消费模式模式:会让一个或者多个客户端监听消息队列,一旦消息到达,消费者马上消费,谁先抢到算谁的,如果队列里没有消息,则消费者继续监听 。另一个就是发布订阅者模式:也是一个或多个客户端订阅消息频道,只要发布者发布消息,所有订阅者都能收到消息,订阅者都是平等的。 46题 Redis的数据结构列表(list)可以实现延时队列,可以通过队列和栈来实现。blpop/brpop来替换lpop/rpop,blpop/brpop阻塞读在队列没有数据的时候,会立即进入休眠状态,一旦数据到来,则立刻醒过来。Redis的有序集合(zset)可以用于实现延时队列,消息作为value,时间作为score。Zrem 命令用于移除有序集中的一个或多个成员,不存在的成员将被忽略。当 key 存在但不是有序集类型时,返回一个错误。 45题 1.热点数据缓存:因为Redis 访问速度块、支持的数据类型比较丰富。 2.限时业务:expire 命令设置 key 的生存时间,到时间后自动删除 key。 3.计数器:incrby 命令可以实现原子性的递增。 4.排行榜:借助 SortedSet 进行热点数据的排序。 5.分布式锁:利用 Redis 的 setnx 命令进行。 6.队列机制:有 list push 和 list pop 这样的命令。 44题 一致哈希 是一种特殊的哈希算法。在使用一致哈希算法后,哈希表槽位数(大小)的改变平均只需要对 K/n 个关键字重新映射,其中K是关键字的数量, n是槽位数量。然而在传统的哈希表中,添加或删除一个槽位的几乎需要对所有关键字进行重新映射。 43题 RDB的优点:适合做冷备份;读写服务影响小,reids可以保持高性能;重启和恢复redis进程,更加快速。RDB的缺点:宕机会丢失最近5分钟的数据;文件特别大时可能会暂停数毫秒,或者甚至数秒。 AOF的优点:每个一秒执行fsync操作,最多丢失1秒钟的数据;以append-only模式写入,没有任何磁盘寻址的开销;文件过大时,不会影响客户端读写;适合做灾难性的误删除的紧急恢复。AOF的缺点:AOF日志文件比RDB数据快照文件更大,支持写QPS比RDB支持的写QPS低;比RDB脆弱,容易有bug。 42题 对于Redis而言,命令的原子性指的是:一个操作的不可以再分,操作要么执行,要么不执行。Redis的操作之所以是原子性的,是因为Redis是单线程的。而在程序中执行多个Redis命令并非是原子性的,这也和普通数据库的表现是一样的,可以用incr或者使用Redis的事务,或者使用Redis+Lua的方式实现。对Redis来说,执行get、set以及eval等API,都是一个一个的任务,这些任务都会由Redis的线程去负责执行,任务要么执行成功,要么执行失败,这就是Redis的命令是原子性的原因。 41题 (1)twemproxy,使用方式简单(相对redis只需修改连接端口),对旧项目扩展的首选。(2)codis,目前用的最多的集群方案,基本和twemproxy一致的效果,但它支持在节点数改变情况下,旧节点数据可恢复到新hash节点。(3)redis cluster3.0自带的集群,特点在于他的分布式算法不是一致性hash,而是hash槽的概念,以及自身支持节点设置从节点。(4)在业务代码层实现,起几个毫无关联的redis实例,在代码层,对key进行hash计算,然后去对应的redis实例操作数据。这种方式对hash层代码要求比较高,考虑部分包括,节点失效后的代替算法方案,数据震荡后的自动脚本恢复,实例的监控,等等。 40题 (1) Master最好不要做任何持久化工作,如RDB内存快照和AOF日志文件 (2) 如果数据比较重要,某个Slave开启AOF备份数据,策略设置为每秒同步一次 (3) 为了主从复制的速度和连接的稳定性,Master和Slave最好在同一个局域网内 (4) 尽量避免在压力很大的主库上增加从库 (5) 主从复制不要用图状结构,用单向链表结构更为稳定,即:Master <- Slave1 <- Slave2 <- Slave3...这样的结构方便解决单点故障问题,实现Slave对Master的替换。如果Master挂了,可以立刻启用Slave1做Master,其他不变。 39题 比如订单管理,热数据:3个月内的订单数据,查询实时性较高;温数据:3个月 ~ 12个月前的订单数据,查询频率不高;冷数据:1年前的订单数据,几乎不会查询,只有偶尔的查询需求。热数据使用mysql进行存储,需要分库分表;温数据可以存储在ES中,利用搜索引擎的特性基本上也可以做到比较快的查询;冷数据可以存放到Hive中。从存储形式来说,一般情况冷数据存储在磁带、光盘,热数据一般存放在SSD中,存取速度快,而温数据可以存放在7200转的硬盘。 38题 当访问量剧增、服务出现问题(如响应时间慢或不响应)或非核心服务影响到核心流程的性能时,仍然需要保证服务还是可用的,即使是有损服务。系统可以根据一些关键数据进行自动降级,也可以配置开关实现人工降级。降级的最终目的是保证核心服务可用,即使是有损的。而且有些服务是无法降级的(如加入购物车、结算)。 37题 分层架构设计,有一条准则:站点层、服务层要做到无数据无状态,这样才能任意的加节点水平扩展,数据和状态尽量存储到后端的数据存储服务,例如数据库服务或者缓存服务。显然进程内缓存违背了这一原则。 36题 更新数据的时候,根据数据的唯一标识,将操作路由之后,发送到一个 jvm 内部队列中。读取数据的时候,如果发现数据不在缓存中,那么将重新读取数据+更新缓存的操作,根据唯一标识路由之后,也发送同一个 jvm 内部队列中。一个队列对应一个工作线程,每个工作线程串行拿到对应的操作,然后一条一条的执行。 35题 redis分布式锁加锁过程:通过setnx向特定的key写入一个随机值,并同时设置失效时间,写值成功既加锁成功;redis分布式锁解锁过程:匹配随机值,删除redis上的特点key数据,要保证获取数据、判断一致以及删除数据三个操作是原子的,为保证原子性一般使用lua脚本实现;在此基础上进一步优化的话,考虑使用心跳检测对锁的有效期进行续期,同时基于redis的发布订阅优雅的实现阻塞式加锁。 34题 volatile-lru:当内存不足以容纳写入数据时,从已设置过期时间的数据集中挑选最近最少使用的数据淘汰。 volatile-ttl:当内存不足以容纳写入数据时,从已设置过期时间的数据集中挑选将要过期的数据淘汰。 volatile-random:当内存不足以容纳写入数据时,从已设置过期时间的数据集中任意选择数据淘汰。 allkeys-lru:当内存不足以容纳写入数据时,从数据集中挑选最近最少使用的数据淘汰。 allkeys-random:当内存不足以容纳写入数据时,从数据集中任意选择数据淘汰。 noeviction:禁止驱逐数据,当内存使用达到阈值的时候,所有引起申请内存的命令会报错。 33题 定时过期:每个设置过期时间的key都需要创建一个定时器,到过期时间就会立即清除。该策略可以立即清除过期的数据,对内存很友好;但是会占用大量的CPU资源去处理过期的数据,从而影响缓存的响应时间和吞吐量。 惰性过期:只有当访问一个key时,才会判断该key是否已过期,过期则清除。该策略可以最大化地节省CPU资源,却对内存非常不友好。极端情况可能出现大量的过期key没有再次被访问,从而不会被清除,占用大量内存。 定期过期:每隔一定的时间,会扫描一定数量的数据库的expires字典中一定数量的key,并清除其中已过期的key。该策略是前两者的一个折中方案。通过调整定时扫描的时间间隔和每次扫描的限定耗时,可以在不同情况下使得CPU和内存资源达到最优的平衡效果。 32题 缓存击穿,一个存在的key,在缓存过期的一刻,同时有大量的请求,这些请求都会击穿到DB,造成瞬时DB请求量大、压力骤增。如何避免:在访问key之前,采用SETNX(set if not exists)来设置另一个短期key来锁住当前key的访问,访问结束再删除该短期key。 31题 缓存雪崩,是指在某一个时间段,缓存集中过期失效。大量的key设置了相同的过期时间,导致在缓存在同一时刻全部失效,造成瞬时DB请求量大、压力骤增,引起雪崩。而缓存服务器某个节点宕机或断网,对数据库服务器造成的压力是不可预知的,很有可能瞬间就把数据库压垮。如何避免:1.redis高可用,搭建redis集群。2.限流降级,在缓存失效后,通过加锁或者队列来控制读数据库写缓存的线程数量。3.数据预热,在即将发生大并发访问前手动触发加载缓存不同的key,设置不同的过期时间。 30题 缓存穿透,是指查询一个数据库一定不存在的数据。正常的使用缓存流程大致是,数据查询先进行缓存查询,如果key不存在或者key已经过期,再对数据库进行查询,并把查询到的对象,放进缓存。如果数据库查询对象为空,则不放进缓存。一些恶意的请求会故意查询不存在的 key,请求量很大,对数据库造成压力,甚至压垮数据库。 如何避免:1:对查询结果为空的情况也进行缓存,缓存时间设置短一点,或者该 key 对应的数据 insert 了之后清理缓存。2:对一定不存在的 key 进行过滤。可以把所有的可能存在的 key 放到一个大的 Bitmap 中,查询时通过该 bitmap 过滤。 29题 1.memcached 所有的值均是简单的字符串,redis 作为其替代者,支持更为丰富的数据类型。 2.redis 的速度比 memcached 快很多。 3.redis 可以持久化其数据。 4.Redis支持数据的备份,即master-slave模式的数据备份。 5.Redis采用VM机制。 6.value大小:redis最大可以达到1GB,而memcache只有1MB。 28题 Spring Boot 推荐使用 Java 配置而非 XML 配置,但是 Spring Boot 中也可以使用 XML 配置,通过spring提供的@ImportResource来加载xml配置。例如:@ImportResource({"classpath:some-context.xml","classpath:another-context.xml"}) 27题 Spring像一个大家族,有众多衍生产品例如Spring Boot,Spring Security等等,但他们的基础都是Spring的IOC和AOP,IOC提供了依赖注入的容器,而AOP解决了面向切面的编程,然后在此两者的基础上实现了其他衍生产品的高级功能。Spring MVC是基于Servlet的一个MVC框架,主要解决WEB开发的问题,因为 Spring的配置非常复杂,各种xml,properties处理起来比较繁琐。Spring Boot遵循约定优于配置,极大降低了Spring使用门槛,又有着Spring原本灵活强大的功能。总结:Spring MVC和Spring Boot都属于Spring,Spring MVC是基于Spring的一个MVC框架,而Spring Boot是基于Spring的一套快速开发整合包。 26题 YAML 是 "YAML Ain't a Markup Language"(YAML 不是一种标记语言)的递归缩写。YAML 的配置文件后缀为 .yml,是一种人类可读的数据序列化语言,可以简单表达清单、散列表,标量等数据形态。它通常用于配置文件,与属性文件相比,YAML文件就更加结构化,而且更少混淆。可以看出YAML具有分层配置数据。 25题 Spring Boot有3种热部署方式: 1.使用springloaded配置pom.xml文件,使用mvn spring-boot:run启动。 2.使用springloaded本地加载启动,配置jvm参数-javaagent:<jar包地址> -noverify。 3.使用devtools工具包,操作简单,但是每次需要重新部署。 用

游客ih62co2qqq5ww 2020-03-27 23:56:48 0 浏览量 回答数 0
阿里云大学 云服务器ECS com域名 网站域名whois查询 开发者平台 小程序定制 小程序开发 国内短信套餐包 开发者技术与产品 云数据库 图像识别 开发者问答 阿里云建站 阿里云备案 云市场 万网 阿里云帮助文档 免费套餐 开发者工具 企业信息查询 小程序开发制作 视频内容分析 企业网站制作 视频集锦 代理记账服务 2020阿里巴巴研发效能峰会 企业建站模板 云效成长地图 高端建站