• 关于

    系统验证方法问题怎么解决

    的搜索结果

问题

无法远程连接服务器

1248241062032039 2019-12-01 19:03:35 145 浏览量 回答数 5

问题

怎么保障iSCSI存储连接?

elainebo 2019-12-01 21:04:12 7482 浏览量 回答数 0

问题

[精品问答]Java一百问第一期

问问小秘 2019-12-01 21:51:20 791 浏览量 回答数 1

阿里云通信

短信服务是阿里云为用户提供的一种通信服务的能力。 支持国内和国际快速发送验证码、短信通知和推广短信。

问题

钉钉微应用session问题

NullPoint 2019-12-01 22:05:42 49 浏览量 回答数 0

问题

荆门开诊断证明-scc

游客5k2abgdj3m2ti 2019-12-01 22:09:00 1 浏览量 回答数 0

回答

很简单,JAVA 泛型直接支持: <T extends View & Interface> void layout(T view); ######谢谢回复,果然可以######so good######你是重载新添加方法,还是重写以前的方法?我觉着是你定义的方法有问题吧######要是View类已经实现了interface接口了呢,这样定义方法参数岂不是多次一举!###### 引用来自“我不说话”的评论 你是重载新添加方法,还是重写以前的方法?我觉着是你定义的方法有问题吧 系统UI类 Radio、checkbox等,内部都继承自View类,我现在需要写一套动态UI方案,需要重写View的所有子类,对重写的类通过一个Interface约束。 在架构的一个方法中,需要传入重写的类,这个参数需要语言层面约束,既继承自View,又实现了interface。 其实可以用View或者interface作为参数类型,然后内部验证另外一个条件,但调用方就会不明确了。我用oc实现了一套,现在是移植到java语言中,可发现这种设计在java中并不好直观实现。######哦 哦 第一次看到你这种需求。######匿名类做参数,同时实现接口,不知道可行不?######其实在java里是完全支持这种实现,即要求所传入的参数既继承了指定类,也实现某一个指定接口。在java官方教程里,叫做通配符的使用。你可以到我的博客里来一下,不在电脑前,很难敲代码。忘记我博客的地址啦,51cto的,前缀是peiquan######我博客的首页好像是 peiquan.51cto.blog######也简单地说一下怎么用,如你的要求,可以这样写〈T extends View & xxInterface〉,这个最佳答案要给我哦,今晚回来给你写个完美的解释,手机码字不方便。######回复 @xoHome : 没事,之前在手机没有看到代码(原来有人答了标准答案)。最佳答案纯属是娱乐一下,这个东西无伤大雅######抱歉,之前有一个朋友的回答已经解决了我的问题,和你的方案是一样的,但人家先回复,没办法。也非常感谢你的回复。######CheckBox ,Radio最多算Component或者Control,不能叫View吧,名字没起好######iOS中是这样的,也只是举个例子描述下问题呢 谢谢回复

kun坤 2020-06-09 09:38:20 0 浏览量 回答数 0

问题

不搞清这8大算法思想,刷再多题效果也不好的 7月23日 【今日算法】

游客ih62co2qqq5ww 2020-07-29 11:10:09 3 浏览量 回答数 1

问题

HBase 优化实战

pandacats 2019-12-20 21:12:25 0 浏览量 回答数 0

问题

【精品问答】Java技术1000问(1)

问问小秘 2019-12-01 21:57:43 37578 浏览量 回答数 11

回答

Re在Windows 2012系统上安装VMware Player虚拟Windows XP机子 每次安装完了vmware虚拟机就自动重启啊 这是什么情况? ------------------------- 回 4楼dongshan8的帖子 对的 就是点那个开启 然后就卡住了 过一会远程连接自己就掉了 再连进去已经重启了 别人都可以用 我这就自动重启 愁死了 ------------------------- 回 8楼dongshan8的帖子 看了下日志 上面说的是这样 系统在未首先正常关机的情况下重新启动。当系统停止响应、出现故障或意外断电时,会发生此错误。 有一长串 应该是类似蓝屏代码什么的吧 我贴出来好了 - System   - Provider    [ Name]  Microsoft-Windows-Kernel-Power    [ Guid]  {331C3B3A-2005-44C2-AC5E-77220C37D6B4}    EventID 41    Version 3    Level 1    Task 63    Opcode 0    Keywords 0x8000000000000002   - TimeCreated    [ SystemTime]  2016-06-03T02:50:05.026555800Z    EventRecordID 26815    Correlation   - Execution    [ ProcessID]  4    [ ThreadID]  8    Channel System    Computer iZ11dtyif95Z   - Security    [ UserID]  S-1-5-18 - EventData   BugcheckCode 0   BugcheckParameter1 0x0   BugcheckParameter2 0x0   BugcheckParameter3 0x0   BugcheckParameter4 0x0   SleepInProgress 0   PowerButtonTimestamp 0   BootAppStatus 0 ------------------------- 回 8楼dongshan8的帖子 看了一下 好像是vmx86.sys导致的蓝屏 删了之后重启 然后打开虚拟机 但是不能启动 把文件放回去重启 再开虚拟机 然后电脑又自动重启了 ------------------------- 回 11楼dongshan8的帖子 最开始用的是12  后来想到可能是版本问题 然后换了10 最后换了8  还是不行 ------------------------- 回 13楼dongshan8的帖子 sorry.. 这几天有点忙今天才回  刚才试了一下 还是不行.. 去掉验证之后 不行 卸载重装了 还是不行 依旧卡死 .. 我觉得我要shi了..    ------------------------- Re在Windows 2012系统上安装VMware Player虚拟Windows XP机子 好的 因为前几天出门了比较忙 才看到 里面没什么东西 是全新的 可以帮忙看一下 谢谢 ------------------------- 回 17楼dongshan8的帖子 好的 我已私信~ ------------------------- 回 19楼dongshan8的帖子 iso文件我删掉了 之前测试了一下 好像不能安装64位系统 因为cpu不支持vx-t      32位的倒是可以 但是配置好了之后点击启动虚拟机就蓝屏了 和iso没啥关系 ------------------------- Re在Windows 2012系统上安装VMware Player虚拟Windows XP机子 好的 如果有解决方法 请告诉我一下 十分感谢 ------------------------- Re在Windows 2012系统上安装VMware Player虚拟Windows XP机子 的确会重启是吧.. 但是之前有些人装了就没问题我也搞不懂。。   VirtualBox我用了 的确是没问题的 但是vm里有些功能v irtualBox没有 所以才来问问有没有解决方法 看了目前只能这样了是吗? ------------------------- 回 25楼dongshan8的帖子 那天又重新开了个实例 没有用..   我的目的是用虚拟机装其他的64位系统 运行32位的应该没问题 但是运行64位的就瞬间蓝屏了  然后看了下日志 就是vmx86.sys蓝屏  用cpu-z看了下 服务器cpu不支持vt-x 我觉得应该和这个也有关系       我是因为要用到VMware里面那个网络设置 就是设置子网ip什么的  vbox里面不能手动设置 只能自动设置 所以就没用vbox ------------------------- 回 27楼dongshan8的帖子 没关系的 打算装centOS 其实我下的那个虚拟机文件自带的是这个 ------------------------- 回 30楼dongshan8的帖子 不管怎么样还是谢谢了。。我已经放弃了。。

rumia 2019-12-01 23:21:38 0 浏览量 回答数 0

回答

加密解密的技术: 对称加密 加密方和解密方使用是同一个密钥,加密解密的速度都很快,先将数据明文 分成数据块儿,一般来讲是大小相同的,如果到最后剩下的不能与其他数据块儿的 大小相同,那么就给它添加一些填充物,然后对每个数据块儿逐个加密, 然后把加密后的数据块儿发给对方,每一次管理一块儿, 但是,加密后的块儿怎么处理,因为每一个块儿都是单独处理,对方在破解数据时 每一块儿独立破解,也就是说这样的加密过程对反破解并没有任何帮助, 对于加密以后的数据块儿的处理有以下两种方法 ECB:每一块儿单独加密,加密一个传递一个, CBC:加密或密文块儿链,通过抑或运算实现,每一个数据块儿,在发送给对方 之前会实现将此数据块儿与此前的数据块儿做一次抑或运算,并把结果发送给对方 所以得不到第一个块儿,得到其他也就没有用,即使是第一块,也会和一个随机数 进行抑或运算 其最大好处在于,做两次抑或运算后可以将数据还原 算法:DES:数据加密标准,使用56位的密钥长度 AES:高级加密标准,可以使用128、192、256三种长度的密钥 3DES:对原有加密3次, Blowfish Twofish RC6 IDEA CAST5 缺陷:1、一个人跟众多对象通信的时候需要记的密码过多 2、密钥分发困难,是最大的难题,没有一种可靠的手段将密钥送给一个 没有见过面的对象 非对称加密 公钥加密算法:DSA,RSA,EIGamal 加密方和解密方使用不同的密钥 功能:加密解密 用户的身份认证,RSA两者都可以实现,而DSA只能加密数据 公钥,私钥 公钥是从私钥中抽出的一段特征,公钥隐含在私钥中 现在主流的密钥长度是2048 缺陷:1、加密速度慢,比对称加密慢3个数量级 1000倍,一个数量级10倍 2、公钥加密一般不用于加密数据,主要用于实现用户认证,数据加密 主要是通过对称加密实现的 如何实现用户认证: 现在假设,有两个通信的对象,一个较小黑,一个较小白,现在小黑给小白发了 一封电子邮件,但是,小白在接受邮件的时候不希望自己的邮件的内容被篡改, 这时小黑就将邮件内容加密且说自己是小黑,并产生一个公钥和一个私钥, 私钥小黑会随身携带 而且不能外泄,公钥则连同邮件一起发给小白,这是小白拿着小黑的公钥如果能够 解密,则说明小黑就是小黑...这就实现了认证,但是如果小黑加密的数据很大,再加上 公钥加密要用很久时间,等加密好,小黑也无语了,所以小黑加密的不是数据 而是这段数据的特征值,说到特征值,下面就说一下单向加密》》》 单向加密 雪崩效应:输入的数据有一点点不同,结果会有巨大不同,主要目的在防暴力破解 单向加密就是去计算一段数据的特征值,加密过程是不可逆的,是去计算一段数据的特征码,是独一无二的,用于对 数据完整性的校验 无论你输入的数据是多长,输出的结果都是一样长度 MD5:message digest,输出结果固定长度128bit SHA1:secure hash algorithm安全的哈希算法,输出结果固定长度160bit 身份认证: 单向加密在实现用户身份认证的时候不会去加密整段数据,而是先去计算这段数据的特征值, 把它的特征值用私钥加密,加密以后附着在数据后面,一起发给对方,在对方收到以后,对方 可以验证两方面的内容,第一用户的身份,第二数据的完整性,接收方先用发送方的公钥对其解密 如果能解密就验证了对方了身份,此时接收方会获得这段数据的特征值,然后接收方也用相同的 算法进行运算,得到一个数据的特征值,如果这两个特征值相同,则说明数据在发送过程完好无损 如果不相同,则说明数据有改动 假设还是小黑和小白通信,双方都希望在数据的发送过程中,既能实现用户身份验证, 又能实现数据加密,还能实现数据的完整性,那该怎么办呢。 现在小黑在发送数据前,先将数据用单向加密,计算出特征值,然后再用私钥解密将特征值加密 接下来会再用产生一个一次性的密码,用小白的公钥将这个密码加密然后放在数据后,最后再用对称加密 将全部加密,这时就是密文了,到了小白那里以后,小白先用自己的私钥拿到那个密码,然后再用那个 密码解密,获得数据的特征值,然后再用单向解密计算出一个特征值,如果这两个值相同,则说明 数据完好,以上过程就实现了三重验证 这三项结合起来是现在电子商务的基础。 可以实现这整个过的工具: opssh gpg 但是这两个过程还存在问题,小白怎样去获得小黑的公钥呢。在传输公钥的时候也有可能 出现欺骗,这怎么解决了。 IKE:互联网密钥交换,实现双方使眼色交换密钥,和密钥本身不在互联网上 传播 PKI:公钥基础设施,或公钥基础架构,CA证书颁发机构,证书内放的就是通信人的公钥信息 怎样基于证书通信: 双方在通信时都出示证件,这个证件由某个权威机构发放,只要验证证件内的有效信息 就可以验证对方的身份,但是在发证的时候怎样防止中间出现欺骗呢。 这又是一个鸡生蛋,蛋生鸡的问题,想想该如何解决呢。 所以一些操作系统在安装时就已经将一些权威的发证机构的证书放在你的电脑里了,这样在一定程度 上可以解决一些问题 证书的格式:X509,PKCS 证书废弃列表:CRL 最常见的攻击“man in the middle”主要是双方身份无法验证 会话劫持, 数据插入, 数据篡改, 这些都是常见的威胁 加密解密用于: 1、用户密码/数据嗅探 password/data sniffing 2、数据操纵,data manipulation 3、authentication manipulation 认证 4、equivalent to mailing on postcards 这几个方面 加密算法的基本法则:kerckhoff's principle 1、一般来讲加密本身并不靠算法,算法固然很关键能将明文变成密文 但是一项真正的加密过程,你的数据是否会被破解,主要不能过强依赖于算法本身, 而要依赖于密码,算法的研究周期很长,更改一个密码很简单,但是更换一个算法就麻烦了 算法需要耗费很多精力,只要算法不公开,就无从下手破解 2、电子商务的过程中不仅要保证数据加密,还要保证不被别人看见 算法: 1、随机数来源靠得住

行者武松 2019-12-02 01:26:47 0 浏览量 回答数 0

回答

为什么你的代码是一个单体? 除了已经实现了微前端的应用之外,所有前端应用本质上都是单一的应用。原因是如果您正在使用 React 库进行开发,并且如果您有两个团队,则两个团队都应该使用相同的React 库,并且两个团队应该在部署时保持同步,并且在代码合并期间始终会发生冲突。它们没有完全分离,很可能它们维护着相同的仓库并具有相同的构建系统。单体应用的退出被标志为微服务的出现。但是它适用于后端! 什么是微服务? 对于微服务,一般而言最简单的解释是,它是一种开发技术,允许开发人员为平台的不同部分进行独立部署,而不会损害其他部分。独立部署的能力允许他们构建孤立或松散耦合的服务。为了使这个体系结构更稳定,有一些规则要遵循,可以总结如下:每个服务应该只有一个任务,它应该很小。所以负责这项服务的团队应该很小。关于团队和项目的规模,James Lewis 和 Martin Fowler 在互联网上做出的最酷解释之一如下: 在我们与微服务从业者的对话中,我们看到了一系列服务规模。报道的最大规模遵循亚马逊关于Two Pizza Team的概念(即整个团队可以由两个比萨饼供给),意味着不超过十几个人。在规模较小的规模上,我们已经看到了一个由六人组成的团队支持六项服务的设置。 我画了一个简单的草图,为整体和微服务提供了直观的解释: 从上图可以理解,微服务中的每个服务都是一个独立的应用,除了UI。UI仍然是一体的!当一个团队处理所有服务并且公司正在扩展时,前端团队将开始苦苦挣扎并且无法跟上它,这是这种架构的瓶颈。 除了瓶颈之外,这种架构也会导致一些组织问题。假设公司正在发展并将采用需要 跨职能 小团队的敏捷开发方法。在这个常见的例子中,产品所有者自然会开始将故事定义为前端和后端任务,而 跨职能 团队将永远不会成为真正的 跨职能 部门。这将是一个浅薄的泡沫,看起来像一个敏捷的团队,但它将在内部分开。关于管理这种团队的更多信息将是一项非常重要的工作。在每个计划中,如果有足够的前端任务或者sprint中有足够的后端任务,则会有一个问题。为了解决这里描述的所有问题和许多其他问题,几年前出现了微前端的想法并且开始迅速普及。 解决微服务中的瓶颈问题:Micro Frontends 解决方案实际上非常明显,采用了多年来为后端服务工作的相同原则:将前端整体划分为小的UI片段。但UI与服务并不十分相似,它是最终用户与产品之间的接口,应该是一致且无缝的。更重要的是,在单页面应用时代,整个应用在客户端的浏览器上运行。它们不再是简单的HTML文件,相反,它们是复杂的软件,达到了非常复杂的水平。现在我觉得微型前端的定义是必要的: Micro Frontends背后的想法是将网站或Web应用视为独立团队拥有的功能组合。每个团队都有一个独特的业务或任务领域,做他们关注和专注的事情。团队是跨职能的,从数据库到用户界面开发端到端的功能。(micro-frontends.org) 根据我迄今为止的经验,对于许多公司来说,直接采用上面提出的架构真的很难。许多其他人都有巨大的遗留负担,这使他们无法迁移到新的架构。出于这个原因,更柔软的中间解决方案更加灵活,易于采用和安全迁移至关重要。在更详细地概述了体系结构后,我将尝试提供一些体系结构的洞察,该体系结构确认了上述提议并允许更灵活的方式。在深入了解细节之前,我需要建立一些术语。 整体结构和一些术语 让我们假设我们通过业务功能垂直划分整体应用结构。我们最终会得到几个较小的应用,它们与单体应用具有相同的结构。但是如果我们在所有这些小型单体应用之上添加一个特殊应用,用户将与这个新应用进行通信,它将把每个小应用的旧单体UI组合成一个。这个新图层可以命名为拼接图层,因为它从每个微服务中获取生成的UI部件,并为最终用户组合成一个无缝 UI,这将是微前端的最直接实现朗 为了更好地理解,我将每个小型单体应用称为微应用,因为它们都是独立的应用,而不仅仅是微服务,它们都有UI部件,每个都代表端到端的业务功能。 众所周知,今天的前端生态系统功能多样,而且非常复杂。因此,当实现真正的产品时,这种直接的解决方案还不够。 要解决的问题 虽然这篇文章只是一个想法,但我开始使用Reddit讨论这个想法。感谢社区和他们的回复,我可以列出一些需要解决的问题,我将尝试逐一描述。 当我们拥有一个完全独立的独立微应用时,如何创建无缝且一致的UI体验? 好吧,这个问题没有灵丹妙药的答案,但其中一个想法是创建一个共享的UI库,它也是一个独立的微应用。通过这种方式,所有其他微应用将依赖于共享的UI库微应用。在这种情况下,我们刚刚创建了一个共享依赖项, 我们就杀死了独立微应用的想法。 另一个想法是在根级共享CSS自定义变量( CSS custom variables )。此解决方案的优势在于应用之间的全局可配置主题。 或者我们可以简单地在应用团队之间共享一些SASS变量和混合。这种方法的缺点是UI元素的重复实现,并且应该对所有微应用始终检查和验证类似元素的设计的完整性。 我们如何确保一个团队不会覆盖另一个团队编写的CSS? 一种解决方案是通过CSS选择器名称进行CSS定义,这些名称由微应用名称精心选择。通过将该范围任务放在拼接层上将减少开发开销,但会增加拼接层的责任。 另一种解决方案可以是强制每个微应用成为自定义Web组件(custom web component)。这个解决方案的优点是浏览器完成了范围设计,但需要付出代价:使用shadow DOM进行服务器端渲染几乎是不可能的。此外,自定义元素没有100%的浏览器支持,特别是IE。 我们应该如何在微应用之间共享全局信息? 这个问题指出了关于这个主题的最关注的问题之一,但解决方案非常简单:HTML 5具有相当强大的功能,大多数前端开发人员都不知道。例如,自定义事件(custom events) 就是其中之一,它是在微应用中共享信息的解决方案。 或者,任何共享的pub-sub实现或T39可观察的实现都可以实现。如果我们想要一个更复杂的全局状态处理程序,我们可以实现共享的微型Redux,通过这种方式我们可以实现更多的相应式架构。 如果所有微应用都是独立应用,我们如何进行客户端路由? 这个问题取决于设计的每个实现, 所有主要的现代框架都通过使用浏览器历史状态在客户端提供强大的路由机制, 问题在于哪个应用负责路由以及何时。 我目前的实用方法是创建一个共享客户端路由器,它只负责顶级路由,其余路由器属于相应的微应用。假设我们有 /content/:id 路由定义。共享路由器将解析 /content,已解析的路由将传递到ContentMicroApp。ContentMicroApp是一个独立的服务器,它将仅使用 /:id 进行调用。 我们必须是服务器端渲染,但是有可能使用微前端吗? 服务器端呈现是一个棘手的问题。如果你正在考虑iframes缝合微应用然后忘记服务器端渲染。同样,拼接任务的Web组件也不比iframe强大。但是,如果每个微应用能够在服务器端呈现其内容,那么拼接层将仅负责连接服务器端的HTML片段。 与传统环境集成至关重要!但是怎么样? 为了整合遗留系统,我想描述我自己的策略,我称之为“ 渐进式入侵 ”。 首先,我们必须实现拼接层,它应该具有透明代理的功能。然后我们可以通过声明一个通配符路径将遗留系统定义为微应用:LegacyMicroApp 。因此,所有流量都将到达拼接层,并将透明地代理到旧系统,因为我们还没有任何其他微应用。 下一步将是我们的 第一次逐步入侵 :我们将从LegacyMicroApp中删除主要导航并用依赖项替换它。这种依赖关系将是一个使用闪亮的新技术实现的微应用:NavigationMicroApp 。 现在,拼接层将每个路径解析为 Legacy Micro App ,它将依赖关系解析为 Navigation MicroApp ,并通过连接这两个来为它们提供服务。 然后通过主导航遵循相同的模式来为引导下一步。 然后我们将继续从Legacy MicroApp中获取逐步重复以上操作,直到没有任何遗漏。 如何编排客户端,这样我们每次都不需要重新加载页面? 拼接层解决了服务器端的问题,但没有解决客户端问题。在客户端,在将已粘贴的片段作为无缝HTML加载后,我们不需要每次在URL更改时加载所有部分。因此,我们必须有一些异步加载片段的机制。但问题是,这些片段可能有一些依赖关系,这些依赖关系需要在客户端解决。这意味着微前端解决方案应提供加载微应用的机制,以及依赖注入的一些机制。 根据上述问题和可能的解决方案,我可以总结以下主题下的所有内容: 客户端 编排路由隔离微应用应用之间通信微应用UI之间的一致性 服务端 服务端渲染路由依赖管理 灵活、强大而简单的架构 所以,这篇文章还是很值得期待的!微前端架构的基本要素和要求终于显现! 在这些要求和关注的指导下,我开始开发一种名为microfe的解决方案。在这里,我将通过抽象的方式强调其主要组件来描述该项目的架构目标。 它很容易从客户端开始,它有三个独立的主干结构:AppsManager, Loader, Router 和一个额外的MicroAppStore。 AppsManager AppsManager 是客户端微应用编排的核心。AppsManager的主要功能是创建依赖关系树。当解决了微应用的所有依赖关系时,它会实例化微应用。 Loader 客户端微应用编排的另一个重要部分是Loader。加载器的责任是从服务器端获取未解析的微应用。 Router 为了解决客户端路由问题,我将 Router 引入了 microfe。与常见的客户端路由器不同,microf 的功能有限,它不解析页面而是微应用。假设我们有一个URL /content/detail/13 和一个ContentMicroApp。在这种情况下,microfe 将URL解析为 /content/,它将调用ContentMicroApp /detail/13 URL部分。 MicroAppStore 为了解决微应用到微应用客户端的通信,我将MicroAppStore引入了 microfe。它具有与Redux库类似的功能,区别在于:它对异步数据结构更改和reducer 声明更灵活。 服务器端部分在实现上可能稍微复杂一些,但结构更简单。它只包含两个主要部分 StitchingServer 和许多MicroAppServer。 MicroAppServer MicroAppServer 的最小功能可以概括为 init 和 serve。 虽然 MicroAppServer 首先启动它应该做的是使用 微应用声明 调用 SticthingServer 注册端点,该声明定义了 MicroAppServer 的微应用 依赖关系, 类型 和 URL架构。我认为没有必要提及服务功能,因为没有什么特别之处。 StitchingServer StitchingServer 为 MicroAppServers 提供注册端点。当 MicroAppServer 将自己注册到 StichingServer 时,StichingServer 会记录MicroAppServer 的声明。 稍后,StitchingServer 使用声明从请求的URL解析 MicroAppServers。 解析M icroAppServer 及其所有依赖项后,CSS,JS和HTML中的所有相对路径都将以相关的 MicroAppServer 公共URL为前缀。另外一步是为CSS选择器添加一个唯一的 MicroAppServer 标识符,以防止客户端的微应用之间发生冲突。 然后 StitchingServer 的主要职责就是:从所有收集的部分组成并返回一个无缝的HTML页面。 其他实现一览 甚至在2016年被称为微前端之前,许多大公司都试图通过 BigPipe 来解决Facebook等类似问题。如今这个想法正在获得验证。不同规模的公司对该主题感兴趣并投入时间和金钱。例如,Zalando开源了其名为Project Mosaic的解决方案。我可以说,微型和 Project Mosaic.遵循类似的方法,但有一些重要的区别。虽然microfe采用完全分散的路由定义来增强每个微应用的独立性,但Project Mosaic更喜欢每条路径的集中路由定义和布局定义。通过这种方式,Project Mosaic可以实现轻松的A/B测试和动态布局生成。 对于该主题还有一些其他方法,例如使用iframe作为拼接层,这显然不是在服务器端而是在客户端。这是一个非常简单的解决方案,不需要太多的服务器结构和DevOps参与。这项工作只能由前端团队完成,因此可以减轻公司的组织负担,同时降低成本。 已经有一个框架叫做 single-spa。该项目依赖于每个应用的命名约定来解析和加载微应用。容易掌握想法并遵循模式。因此,在您自己的本地环境中尝试该想法可能是一个很好的初步介绍。但是项目的缺点是你必须以特定的方式构建每个微应用,以便他们可以很好地使用框架。 最后的想法 我相信微前端话题会更频繁地讨论。如果该主题能够引起越来越多公司的关注,它将成为大型团队的事实发展方式。在不久的将来,任何前端开发人员都可以在这个架构上掌握一些见解和经验,这真的很有用。 关于本文 译者:@Vincent.W 译文:https://zhuanlan.zhihu.com/p/82965940 作者:@onerzafer 原文:https://hackernoon.com/understanding-micro-frontends-b1c11585a297 加入阿里云钉钉群享福利:每周技术直播,定期群内有奖活动、大咖问答 阿里云开发者社区

茶什i 2020-01-06 17:57:24 0 浏览量 回答数 0

回答

一、基础篇 1.1、Java基础 面向对象的特征:继承、封装和多态 final, finally, finalize 的区别 Exception、Error、运行时异常与一般异常有何异同 请写出5种常见到的runtime exception int 和 Integer 有什么区别,Integer的值缓存范围 包装类,装箱和拆箱 String、StringBuilder、StringBuffer 重载和重写的区别 抽象类和接口有什么区别 说说反射的用途及实现 说说自定义注解的场景及实现 HTTP请求的GET与POST方式的区别 Session与Cookie区别 列出自己常用的JDK包 MVC设计思想 equals与==的区别 hashCode和equals方法的区别与联系 什么是Java序列化和反序列化,如何实现Java序列化?或者请解释Serializable 接口的作用 Object类中常见的方法,为什么wait notify会放在Object里边? Java的平台无关性如何体现出来的 JDK和JRE的区别 Java 8有哪些新特性 1.2、Java常见集合 List 和 Set 区别 Set和hashCode以及equals方法的联系 List 和 Map 区别 Arraylist 与 LinkedList 区别 ArrayList 与 Vector 区别 HashMap 和 Hashtable 的区别 HashSet 和 HashMap 区别 HashMap 和 ConcurrentHashMap 的区别 HashMap 的工作原理及代码实现,什么时候用到红黑树 多线程情况下HashMap死循环的问题 HashMap出现Hash DOS攻击的问题 ConcurrentHashMap 的工作原理及代码实现,如何统计所有的元素个数 手写简单的HashMap 看过那些Java集合类的源码 1.3、进程和线程 线程和进程的概念、并行和并发的概念 创建线程的方式及实现 进程间通信的方式 说说 CountDownLatch、CyclicBarrier 原理和区别 说说 Semaphore 原理 说说 Exchanger 原理 ThreadLocal 原理分析,ThreadLocal为什么会出现OOM,出现的深层次原理 讲讲线程池的实现原理 线程池的几种实现方式 线程的生命周期,状态是如何转移的 可参考:《Java多线程编程核心技术》 1.4、锁机制 说说线程安全问题,什么是线程安全,如何保证线程安全 重入锁的概念,重入锁为什么可以防止死锁 产生死锁的四个条件(互斥、请求与保持、不剥夺、循环等待) 如何检查死锁(通过jConsole检查死锁) volatile 实现原理(禁止指令重排、刷新内存) synchronized 实现原理(对象监视器) synchronized 与 lock 的区别 AQS同步队列 CAS无锁的概念、乐观锁和悲观锁 常见的原子操作类 什么是ABA问题,出现ABA问题JDK是如何解决的 乐观锁的业务场景及实现方式 Java 8并法包下常见的并发类 偏向锁、轻量级锁、重量级锁、自旋锁的概念 可参考:《Java多线程编程核心技术》 1.5、JVM JVM运行时内存区域划分 内存溢出OOM和堆栈溢出SOE的示例及原因、如何排查与解决 如何判断对象是否可以回收或存活 常见的GC回收算法及其含义 常见的JVM性能监控和故障处理工具类:jps、jstat、jmap、jinfo、jconsole等 JVM如何设置参数 JVM性能调优 类加载器、双亲委派模型、一个类的生命周期、类是如何加载到JVM中的 类加载的过程:加载、验证、准备、解析、初始化 强引用、软引用、弱引用、虚引用 Java内存模型JMM 1.6、设计模式 常见的设计模式 设计模式的的六大原则及其含义 常见的单例模式以及各种实现方式的优缺点,哪一种最好,手写常见的单利模式 设计模式在实际场景中的应用 Spring中用到了哪些设计模式 MyBatis中用到了哪些设计模式 你项目中有使用哪些设计模式 说说常用开源框架中设计模式使用分析 动态代理很重要!!! 1.7、数据结构 树(二叉查找树、平衡二叉树、红黑树、B树、B+树) 深度有限算法、广度优先算法 克鲁斯卡尔算法、普林母算法、迪克拉斯算法 什么是一致性Hash及其原理、Hash环问题 常见的排序算法和查找算法:快排、折半查找、堆排序等 1.8、网络/IO基础 BIO、NIO、AIO的概念 什么是长连接和短连接 Http1.0和2.0相比有什么区别,可参考《Http 2.0》 Https的基本概念 三次握手和四次挥手、为什么挥手需要四次 从游览器中输入URL到页面加载的发生了什么?可参考《从输入URL到页面加载发生了什么》 二、数据存储和消息队列 2.1、数据库 MySQL 索引使用的注意事项 DDL、DML、DCL分别指什么 explain命令 left join,right join,inner join 数据库事物ACID(原子性、一致性、隔离性、持久性) 事物的隔离级别(读未提交、读以提交、可重复读、可序列化读) 脏读、幻读、不可重复读 数据库的几大范式 数据库常见的命令 说说分库与分表设计 分库与分表带来的分布式困境与应对之策(如何解决分布式下的分库分表,全局表?) 说说 SQL 优化之道 MySQL遇到的死锁问题、如何排查与解决 存储引擎的 InnoDB与MyISAM区别,优缺点,使用场景 索引类别(B+树索引、全文索引、哈希索引)、索引的原理 什么是自适应哈希索引(AHI) 为什么要用 B+tree作为MySQL索引的数据结构 聚集索引与非聚集索引的区别 遇到过索引失效的情况没,什么时候可能会出现,如何解决 limit 20000 加载很慢怎么解决 如何选择合适的分布式主键方案 选择合适的数据存储方案 常见的几种分布式ID的设计方案 常见的数据库优化方案,在你的项目中数据库如何进行优化的 2.2、Redis Redis 有哪些数据类型,可参考《Redis常见的5种不同的数据类型详解》 Redis 内部结构 Redis 使用场景 Redis 持久化机制,可参考《使用快照和AOF将Redis数据持久化到硬盘中》 Redis 集群方案与实现 Redis 为什么是单线程的? 缓存雪崩、缓存穿透、缓存预热、缓存更新、缓存降级 使用缓存的合理性问题 Redis常见的回收策略 2.3、消息队列 消息队列的使用场景 消息的重发补偿解决思路 消息的幂等性解决思路 消息的堆积解决思路 自己如何实现消息队列 如何保证消息的有序性 三、开源框架和容器 3.1、SSM/Servlet Servlet的生命周期 转发与重定向的区别 BeanFactory 和 ApplicationContext 有什么区别 Spring Bean 的生命周期 Spring IOC 如何实现 Spring中Bean的作用域,默认的是哪一个 说说 Spring AOP、Spring AOP 实现原理 动态代理(CGLib 与 JDK)、优缺点、性能对比、如何选择 Spring 事务实现方式、事务的传播机制、默认的事务类别 Spring 事务底层原理 Spring事务失效(事务嵌套),JDK动态代理给Spring事务埋下的坑,可参考《JDK动态代理给Spring事务埋下的坑!》 如何自定义注解实现功能 Spring MVC 运行流程 Spring MVC 启动流程 Spring 的单例实现原理 Spring 框架中用到了哪些设计模式 Spring 其他产品(Srping Boot、Spring Cloud、Spring Secuirity、Spring Data、Spring AMQP 等) 有没有用到Spring Boot,Spring Boot的认识、原理 MyBatis的原理 可参考《为什么会有Spring》 可参考《为什么会有Spring AOP》 3.2、Netty 为什么选择 Netty 说说业务中,Netty 的使用场景 原生的 NIO 在 JDK 1.7 版本存在 epoll bug 什么是TCP 粘包/拆包 TCP粘包/拆包的解决办法 Netty 线程模型 说说 Netty 的零拷贝 Netty 内部执行流程 Netty 重连实现 3.3、Tomcat Tomcat的基础架构(Server、Service、Connector、Container) Tomcat如何加载Servlet的 Pipeline-Valve机制 可参考:《四张图带你了解Tomcat系统架构!》 四、分布式 4.1、Nginx 请解释什么是C10K问题或者知道什么是C10K问题吗? Nginx简介,可参考《Nginx简介》 正向代理和反向代理. Nginx几种常见的负载均衡策略 Nginx服务器上的Master和Worker进程分别是什么 使用“反向代理服务器”的优点是什么? 4.2、分布式其他 谈谈业务中使用分布式的场景 Session 分布式方案 Session 分布式处理 分布式锁的应用场景、分布式锁的产生原因、基本概念 分布是锁的常见解决方案 分布式事务的常见解决方案 集群与负载均衡的算法与实现 说说分库与分表设计,可参考《数据库分库分表策略的具体实现方案》 分库与分表带来的分布式困境与应对之策 4.3、Dubbo 什么是Dubbo,可参考《Dubbo入门》 什么是RPC、如何实现RPC、RPC 的实现原理,可参考《基于HTTP的RPC实现》 Dubbo中的SPI是什么概念 Dubbo的基本原理、执行流程 五、微服务 5.1、微服务 前后端分离是如何做的? 微服务哪些框架 Spring Could的常见组件有哪些?可参考《Spring Cloud概述》 领域驱动有了解吗?什么是领域驱动模型?充血模型、贫血模型 JWT有了解吗,什么是JWT,可参考《前后端分离利器之JWT》 你怎么理解 RESTful 说说如何设计一个良好的 API 如何理解 RESTful API 的幂等性 如何保证接口的幂等性 说说 CAP 定理、BASE 理论 怎么考虑数据一致性问题 说说最终一致性的实现方案 微服务的优缺点,可参考《微服务批判》 微服务与 SOA 的区别 如何拆分服务、水平分割、垂直分割 如何应对微服务的链式调用异常 如何快速追踪与定位问题 如何保证微服务的安全、认证 5.2、安全问题 如何防范常见的Web攻击、如何方式SQL注入 服务端通信安全攻防 HTTPS原理剖析、降级攻击、HTTP与HTTPS的对比 5.3、性能优化 性能指标有哪些 如何发现性能瓶颈 性能调优的常见手段 说说你在项目中如何进行性能调优 六、其他 6.1、设计能力 说说你在项目中使用过的UML图 你如何考虑组件化、服务化、系统拆分 秒杀场景如何设计 可参考:《秒杀系统的技术挑战、应对策略以及架构设计总结一二!》 6.2、业务工程 说说你的开发流程、如何进行自动化部署的 你和团队是如何沟通的 你如何进行代码评审 说说你对技术与业务的理解 说说你在项目中遇到感觉最难Bug,是如何解决的 介绍一下工作中的一个你认为最有价值的项目,以及在这个过程中的角色、解决的问题、你觉得你们项目还有哪些不足的地方 6.3、软实力 说说你的优缺点、亮点 说说你最近在看什么书、什么博客、在研究什么新技术、再看那些开源项目的源代码 说说你觉得最有意义的技术书籍 工作之余做什么事情、平时是如何学习的,怎样提升自己的能力 说说个人发展方向方面的思考 说说你认为的服务端开发工程师应该具备哪些能力 说说你认为的架构师是什么样的,架构师主要做什么 如何看待加班的问题

徐刘根 2020-03-31 11:22:08 0 浏览量 回答数 0

回答

一、故障现象描述 NAS操作系统内核为Linux,自带的存储有16块硬盘,总共分两组,每组做了RAID5,Linux操作系统无法正常启动,在服务启动到cups那里就停止了,按键ctrl+c强制断开也没有响应,查看硬盘状态,都是正常的,没有报警或者警告现象。 二、问题判断思路 通过上面这些现象,首先判断NAS硬件应该没问题,NAS存储盘也应该正常,现在Linux无法启动,应该是Linux系统本身存在问题,因此,首先从Linux系统入手进行排查。 三、问题处理过程 1、第一次处理过程 NAS系统本身就是一个Linux内核装载了一个文件系统管理软件,管理软件可以对系统磁盘、系统服务、文件系统等进行管理和操作,正常情况下,基于Linux内核的NAS系统应该启动到init3或者init5模式下,由于NAS仅用了Linux一个内核模块和几个简单服务,所以判断NAS下的Linux系统肯定是启动到init 3模式下,那么现在无法启动到多用户字符界面下,何不让Linux直接进入单用户(init 1)模式下呢,因为单用户模式下仅仅启用系统所必须的几个服务,而cpus服务是应用程序级别的,肯定不会在“init 1”模式下启动,这样就避开了cups无法启动的问题,所以,下面的工作就是要进入Linux的单用户模式下。 很多的Linux发行版本都可以在启动的引导界面通过相关的设置进入单用户模式下,通过查看NAS的启动过程,基本判断这个Linux系统与RHEL/Centos发行版极为类似,因此,就通过RHEL/Centos进入单用户模式的方法试一试。 RHEL/Centos进入单用户模式很简单,就是在系统启动到引导欢迎界面下,按键e,然后编辑正确的内核引导选项,在最后面加上“single”选项,最后直接按键“b“即可进入单用户了。 接下来,重新启动NAS,然后硬件自检,接着开始启动Linux,一直在等待这个NAS的启动欢迎界面,但是欢迎界面一直没出来,就直接进入内核镜像,加载内核阶段了,没有内核引导界面,如何进入单用户啊,经过简单思考,还是决定在硬件检测完毕后直接按键盘”e“键,奇迹出现了,还真的可以,NAS进入到了内核引导界面,通过简单观察,发行第二个正是要引导的内核选项,于是移动键盘上下键,选择这个内核,然后在按键”e“,进入内核引导编辑界面了,在这行的最后面,输入“single”,然后按回车键,返回上个界面,接着按键“b”开始进行单用户引导,经过一分钟的时间,系统如愿以偿的进入了单用户下的shell命令行。 进入单用户模式后,能做的事情就很多了,首先要做的就是将cups服务在多用户模式下自启动关闭,执行命令如下: chkconfig --levle 35 cups off 执行成功后,重启系统进入多用户模式下,看看系统是否能正常启动。 2、第二次处理过程 将cups服务开机自启动关闭后,重启NAS,发现问题依旧,NAS还是启动到cups服务那里停止了,难道上面的命令没有执行成功吗?明明已经禁止了cups服务启动了,怎么还是启动了呢?于是,继续重启NAS,再次进入单用户模式下,看看问题究竟出在哪里了。 进入单用户后,再次执行chkconfig 命令,依旧可以成功,难道是cups服务有问题,先看看配置文件,执行如下命令: vi /etc/cups/cupsd.conf 在这里发现了一个问题,vi打开cupsd.conf时,提示“write file in swap”,文件明明真实存在,怎么说在虚拟内存中呢,经过思考,只有一种可能,NAS设备的Linux系统分区应该没有正确挂载,导致在进入单用户的时候,所有文件都存储在了虚拟内存中,要验证非常简单,执行“df”命令查看即可,如下图所示: 从这里可以看出,Linux的系统分区并未挂载,通过“fdisk -l”检查下磁盘分区状态,输出如下图所示: 通过输出可知,NAS的系统盘是/dev/sda,仅划分了/dev/sda1和/dev/sda2两个系统分区,而数据磁盘是经过做RAID5完成的,在系统上的设备标识分别是/dev/sdb1和/dev/sdc1,由于单用户默认没有挂载任何NAS磁盘,这里尝试手动挂载NAS的系统盘,执行如下命令: [root@NASserver ~]#mount /dev/sda2 /mnt [root@NASserver ~]#mount /dev/sda1 /opt 这里的/mnt、/opt是随意挂载的目录,也可以挂载到其他空目录下,挂载完成,分别进入这连个目录看看内容有什么,如下图所示: 通过这两个内容的查看,初步判断,/dev/sda2分区应该是Linux的根分区,而/dev/sda1应该是/boot分区。现在分区已经挂载上去了,再次执行df命令看看挂载情况,如下图所示: 到这里为止,发现问题了。/dev/sda2磁盘分区已经没有可用的磁盘空间了,而这个分区刚好是NAS系统的根分区,根分区没有空间了,那么系统启动肯定就出问题了。 下面再把思路转到前面介绍的案例中,由于系统cups服务在启动的时候会写启动日志到根分区,而根分区因为没有空间了,所以也就无法写日志了,由此导致的结果就是cups服务无法启动,这就解释了此案例中NAS系统每次启动到cups服务就停止的原因。 四解决问题 由于NAS系统只有根分区和/boot分区,所以系统产生的相关日志都会存储在根分区中,现在根分区满了,首先可以清理的就是/var目录下的系统相关日志文件,通常可以清理的目录有/var/log,执行如下命令查看/var/log日志目录占据磁盘空间大小: [root@NASserver ~]# du -sh /var/log 50.1G /var/log 通过命令输出发现/var/log目录占据了根分区仅70%的空间,清理这个目录下的日志文件即可释放大部分根分区空间,清理完毕,重启NAS系统,发现系统cups服务能正常启动了,NAS服务也启动正常了。 答案来源网络,供参考,希望对您有帮助

问问小秘 2019-12-02 03:02:01 0 浏览量 回答数 0

回答

在开始谈我对架构本质的理解之前,先谈谈对今天技术沙龙主题的个人见解,千万级规模的网站感觉数量级是非常大的,对这个数量级我们战略上 要重 视 它 , 战术上又 要 藐 视 它。先举个例子感受一下千万级到底是什么数量级?现在很流行的优步(Uber),从媒体公布的信息看,它每天接单量平均在百万左右, 假如每天有10个小时的服务时间,平均QPS只有30左右。对于一个后台服务器,单机的平均QPS可以到达800-1000,单独看写的业务量很简单 。为什么我们又不能说轻视它?第一,我们看它的数据存储,每天一百万的话,一年数据量的规模是多少?其次,刚才说的订单量,每一个订单要推送给附近的司机、司机要并发抢单,后面业务场景的访问量往往是前者的上百倍,轻松就超过上亿级别了。 今天我想从架构的本质谈起之后,希望大家理解在做一些建构设计的时候,它的出发点以及它解决的问题是什么。 架构,刚开始的解释是我从知乎上看到的。什么是架构?有人讲, 说架构并不是一 个很 悬 乎的 东西 , 实际 上就是一个架子 , 放一些 业务 和算法,跟我们的生活中的晾衣架很像。更抽象一点,说架构其 实 是 对 我 们 重复性业务 的抽象和我 们 未来 业务 拓展的前瞻,强调过去的经验和你对整个行业的预见。 我们要想做一个架构的话需要哪些能力?我觉得最重要的是架构师一个最重要的能力就是你要有 战 略分解能力。这个怎么来看呢: 第一,你必须要有抽象的能力,抽象的能力最基本就是去重,去重在整个架构中体现在方方面面,从定义一个函数,到定义一个类,到提供的一个服务,以及模板,背后都是要去重提高可复用率。 第二, 分类能力。做软件需要做对象的解耦,要定义对象的属性和方法,做分布式系统的时候要做服务的拆分和模块化,要定义服务的接口和规范。 第三, 算法(性能),它的价值体现在提升系统的性能,所有性能的提升,最终都会落到CPU,内存,IO和网络这4大块上。 这一页PPT举了一些例子来更深入的理解常见技术背后的架构理念。 第一个例子,在分布式系统我们会做 MySQL分 库 分表,我们要从不同的库和表中读取数据,这样的抽象最直观就是使用模板,因为绝大多数SQL语义是相同的,除了路由到哪个库哪个表,如果不使用Proxy中间件,模板就是性价比最高的方法。 第二看一下加速网络的CDN,它是做速度方面的性能提升,刚才我们也提到从CPU、内存、IO、网络四个方面来考虑,CDN本质上一个是做网络智能调度优化,另一个是多级缓存优化。 第三个看一下服务化,刚才已经提到了,各个大网站转型过程中一定会做服务化,其实它就是做抽象和做服务的拆分。第四个看一下消息队列,本质上还是做分类,只不过不是两个边际清晰的类,而是把两个边际不清晰的子系统通过队列解构并且异步化。新浪微博整体架构是什么样的 接下我们看一下微博整体架构,到一定量级的系统整个架构都会变成三层,客户端包括WEB、安卓和IOS,这里就不说了。接着还都会有一个接口层, 有三个主要作用: 第一个作用,要做 安全隔离,因为前端节点都是直接和用户交互,需要防范各种恶意攻击; 第二个还充当着一个 流量控制的作用,大家知道,在2014年春节的时候,微信红包,每分钟8亿多次的请求,其实真正到它后台的请求量,只有十万左右的数量级(这里的数据可能不准),剩余的流量在接口层就被挡住了; 第三,我们看对 PC 端和移 动 端的需求不一样的,所以我们可以进行拆分。接口层之后是后台,可以看到微博后台有三大块: 一个是 平台服 务, 第二, 搜索, 第三, 大数据。到了后台的各种服务其实都是处理的数据。 像平台的业务部门,做的就是 数据存储和读 取,对搜索来说做的是 数据的 检 索,对大数据来说是做的数据的 挖掘。微博其实和淘宝是很类似 微博其实和淘宝是很类似的。一般来说,第一代架构,基本上能支撑到用户到 百万 级别,到第二代架构基本能支撑到 千万 级别都没什么问题,当业务规模到 亿级别时,需要第三代的架构。 从 LAMP 的架构到面向服 务 的架构,有几个地方是非常难的,首先不可能在第一代基础上通过简单的修修补补满足用户量快速增长的,同时线上业务又不能停, 这是我们常说的 在 飞 机上 换 引擎的 问题。前两天我有一个朋友问我,说他在内部推行服务化的时候,把一个模块服务化做完了,其他部门就是不接。我建议在做服务化的时候,首先更多是偏向业务的梳理,同时要找准一个很好的切入点,既有架构和服务化上的提升,业务方也要有收益,比如提升性能或者降低维护成本同时升级过程要平滑,建议开始从原子化服务切入,比如基础的用户服务, 基础的短消息服务,基础的推送服务。 第二,就是可 以做无状 态 服 务,后面会详细讲,还有数据量大了后需要做数据Sharding,后面会将。 第三代 架构 要解决的 问题,就是用户量和业务趋于稳步增加(相对爆发期的指数级增长),更多考虑技术框架的稳定性, 提升系统整体的性能,降低成本,还有对整个系统监控的完善和升级。 大型网站的系统架构是如何演变的 我们通过通过数据看一下它的挑战,PV是在10亿级别,QPS在百万,数据量在千亿级别。我们可用性,就是SLA要求4个9,接口响应最多不能超过150毫秒,线上所有的故障必须得在5分钟内解决完。如果说5分钟没处理呢?那会影响你年终的绩效考核。2015年微博DAU已经过亿。我们系统有上百个微服务,每周会有两次的常规上线和不限次数的紧急上线。我们的挑战都一样,就是数据量,bigger and bigger,用户体验是faster and faster,业务是more and more。互联网业务更多是产品体验驱动, 技 术 在 产 品 体验上最有效的贡献 , 就是你的性能 越来越好 。 每次降低加载一个页面的时间,都可以间接的降低这个页面上用户的流失率。微博的技术挑战和正交分解法解析架构 下面看一下 第三代的 架构 图 以及 我 们 怎么用正交分解法 阐 述。 我们可以看到我们从两个维度,横轴和纵轴可以看到。 一个 维 度 是 水平的 分层 拆分,第二从垂直的维度会做拆分。水平的维度从接口层、到服务层到数据存储层。垂直怎么拆分,会用业务架构、技术架构、监控平台、服务治理等等来处理。我相信到第二代的时候很多架构已经有了业务架构和技术架构的拆分。我们看一下, 接口层有feed、用户关系、通讯接口;服务层,SOA里有基层服务、原子服务和组合服务,在微博我们只有原子服务和组合服务。原子服务不依赖于任何其他服务,组合服务由几个原子服务和自己的业务逻辑构建而成 ,资源层负责海量数据的存储(后面例子会详细讲)。技 术框架解决 独立于 业务 的海量高并发场景下的技术难题,由众多的技术组件共同构建而成 。在接口层,微博使用JERSY框架,帮助你做参数的解析,参数的验证,序列化和反序列化;资源层,主要是缓存、DB相关的各类组件,比如Cache组件和对象库组件。监 控平台和服 务 治理 , 完成系统服务的像素级监控,对分布式系统做提前诊断、预警以及治理。包含了SLA规则的制定、服务监控、服务调用链监控、流量监控、错误异常监控、线上灰度发布上线系统、线上扩容缩容调度系统等。 下面我们讲一下常见的设计原则。 第一个,首先是系统架构三个利器: 一个, 我 们 RPC 服 务组 件 (这里不讲了), 第二个,我们 消息中 间 件 。消息中间件起的作用:可以把两个模块之间的交互异步化,其次可以把不均匀请求流量输出为匀速的输出流量,所以说消息中间件 异步化 解耦 和流量削峰的利器。 第三个是配置管理,它是 代码级灰度发布以及 保障系统降级的利器。 第二个 , 无状态 , 接口 层 最重要的就是无状 态。我们在电商网站购物,在这个过程中很多情况下是有状态的,比如我浏览了哪些商品,为什么大家又常说接口层是无状态的,其实我们把状态从接口层剥离到了数据层。像用户在电商网站购物,选了几件商品,到了哪一步,接口无状态后,状态要么放在缓存中,要么放在数据库中, 其 实 它并不是没有状 态 , 只是在 这 个 过 程中我 们 要把一些有状 态 的 东 西抽离出来 到了数据层。 第三个, 数据 层 比服 务层 更需要 设计,这是一条非常重要的经验。对于服务层来说,可以拿PHP写,明天你可以拿JAVA来写,但是如果你的数据结构开始设计不合理,将来数据结构的改变会花费你数倍的代价,老的数据格式向新的数据格式迁移会让你痛不欲生,既有工作量上的,又有数据迁移跨越的时间周期,有一些甚至需要半年以上。 第四,物理结构与逻辑结构的映射,上一张图看到两个维度切成十二个区间,每个区间代表一个技术领域,这个可以看做我们的逻辑结构。另外,不论后台还是应用层的开发团队,一般都会分几个垂直的业务组加上一个基础技术架构组,这就是从物理组织架构到逻辑的技术架构的完美的映射,精细化团队分工,有利于提高沟通协作的效率 。 第五, www .sanhao.com 的访问过程,我们这个架构图里没有涉及到的,举个例子,比如当你在浏览器输入www.sanhao网址的时候,这个请求在接口层之前发生了什么?首先会查看你本机DNS以及DNS服务,查找域名对应的IP地址,然后发送HTTP请求过去。这个请求首先会到前端的VIP地址(公网服务IP地址),VIP之后还要经过负载均衡器(Nginx服务器),之后才到你的应用接口层。在接口层之前发生了这么多事,可能有用户报一个问题的时候,你通过在接口层查日志根本发现不了问题,原因就是问题可能发生在到达接口层之前了。 第六,我们说分布式系统,它最终的瓶颈会落在哪里呢?前端时间有一个网友跟我讨论的时候,说他们的系统遇到了一个瓶颈, 查遍了CPU,内存,网络,存储,都没有问题。我说你再查一遍,因为最终你不论用上千台服务器还是上万台服务器,最终系统出瓶颈的一定会落在某一台机(可能是叶子节点也可能是核心的节点),一定落在CPU、内存、存储和网络上,最后查出来问题出在一台服务器的网卡带宽上。微博多级双机房缓存架构 接下来我们看一下微博的Feed多级缓存。我们做业务的时候,经常很少做业务分析,技术大会上的分享又都偏向技术架构。其实大家更多的日常工作是需要花费更多时间在业务优化上。这张图是统计微博的信息流前几页的访问比例,像前三页占了97%,在做缓存设计的时候,我们最多只存最近的M条数据。 这里强调的就是做系统设计 要基于用 户 的 场 景 , 越细致越好 。举了一个例子,大家都会用电商,电商在双十一会做全国范围内的活动,他们做设计的时候也会考虑场景的,一个就是购物车,我曾经跟相关开发讨论过,购物车是在双十一之前用户的访问量非常大,就是不停地往里加商品。在真正到双十一那天他不会往购物车加东西了,但是他会频繁的浏览购物车。针对这个场景,活动之前重点设计优化购物车的写场景, 活动开始后优化购物车的读场景。 你看到的微博是由哪些部分聚合而成的呢?最右边的是Feed,就是微博所有关注的人,他们的微博所组成的。微博我们会按照时间顺序把所有关注人的顺序做一个排序。随着业务的发展,除了跟时间序相关的微博还有非时间序的微博,就是会有广告的要求,增加一些广告,还有粉丝头条,就是拿钱买的,热门微博,都会插在其中。分发控制,就是说和一些推荐相关的,我推荐一些相关的好友的微博,我推荐一些你可能没有读过的微博,我推荐一些其他类型的微博。 当然对非时序的微博和分发控制微博,实际会起多个并行的程序来读取,最后同步做统一的聚合。这里稍微分享一下, 从SNS社交领域来看,国内现在做的比较好的三个信息流: 微博 是 基于弱关系的媒体信息流 ; 朋友圈是基于 强 关系的信息流 ; 另外一个做的比 较 好的就是今日 头 条 , 它并不是基于关系来构建信息流 , 而是基于 兴趣和相关性的个性化推荐 信息流 。 信息流的聚合,体现在很多很多的产品之中,除了SNS,电商里也有信息流的聚合的影子。比如搜索一个商品后出来的列表页,它的信息流基本由几部分组成:第一,打广告的;第二个,做一些推荐,热门的商品,其次,才是关键字相关的搜索结果。 信息流 开始的时候 很 简单 , 但是到后期会 发现 , 你的 这 个流 如何做控制分发 , 非常复杂, 微博在最近一两年一直在做 这样 的工作。刚才我们是从业务上分析,那么技术上怎么解决高并发,高性能的问题?微博访问量很大的时候,底层存储是用MySQL数据库,当然也会有其他的。对于查询请求量大的时候,大家知道一定有缓存,可以复用可重用的计算结果。可以看到,发一条微博,我有很多粉丝,他们都会来看我发的内容,所以 微博是最适合使用 缓 存 的系统,微博的读写比例基本在几十比一。微博使用了 双 层缓 存,上面是L1,每个L1上都是一组(包含4-6台机器),左边的框相当于一个机房,右边又是一个机房。在这个系统中L1缓存所起的作用是什么? 首先,L1 缓 存增加整个系 统 的 QPS, 其次 以低成本灵活扩容的方式 增加 系统 的 带宽 。想象一个极端场景,只有一篇博文,但是它的访问量无限增长,其实我们不需要影响L2缓存,因为它的内容存储的量小,但它就是访问量大。这种场景下,你就需要使用L1来扩容提升QPS和带宽瓶颈。另外一个场景,就是L2级缓存发生作用,比如我有一千万个用户,去访问的是一百万个用户的微博 ,这个时候,他不只是说你的吞吐量和访问带宽,就是你要缓存的博文的内容也很多了,这个时候你要考虑缓存的容量, 第二 级缓 存更多的是从容量上来 规划,保证请求以较小的比例 穿透到 后端的 数据 库 中 ,根据你的用户模型你可以估出来,到底有百分之多少的请求不能穿透到DB, 评估这个容量之后,才能更好的评估DB需要多少库,需要承担多大的访问的压力。另外,我们看双机房的话,左边一个,右边一个。 两个机房是互 为 主 备 , 或者互 为热备 。如果两个用户在不同地域,他们访问两个不同机房的时候,假设用户从IDC1过来,因为就近原理,他会访问L1,没有的话才会跑到Master,当在IDC1没找到的时候才会跑到IDC2来找。同时有用户从IDC2访问,也会有请求从L1和Master返回或者到IDC1去查找。 IDC1 和 IDC2 ,两个机房都有全量的用户数据,同时在线提供服务,但是缓存查询又遵循最近访问原理。还有哪些多级缓存的例子呢?CDN是典型的多级缓存。CDN在国内各个地区做了很多节点,比如在杭州市部署一个节点时,在机房里肯定不止一台机器,那么对于一个地区来说,只有几台服务器到源站回源,其他节点都到这几台服务器回源即可,这么看CDN至少也有两级。Local Cache+ 分布式 缓 存,这也是常见的一种策略。有一种场景,分布式缓存并不适用, 比如 单 点 资 源 的爆发性峰值流量,这个时候使用Local Cache + 分布式缓存,Local Cache 在 应用 服 务 器 上用很小的 内存资源 挡住少量的 极端峰值流量,长尾的流量仍然访问分布式缓存,这样的Hybrid缓存架构通过复用众多的应用服务器节点,降低了系统的整体成本。 我们来看一下 Feed 的存 储 架构,微博的博文主要存在MySQL中。首先来看内容表,这个比较简单,每条内容一个索引,每天建一张表,其次看索引表,一共建了两级索引。首先想象一下用户场景,大部分用户刷微博的时候,看的是他关注所有人的微博,然后按时间来排序。仔细分析发现在这个场景下, 跟一个用户的自己的相关性很小了。所以在一级索引的时候会先根据关注的用户,取他们的前条微博ID,然后聚合排序。我们在做哈希(分库分表)的时候,同时考虑了按照UID哈希和按照时间维度。很业务和时间相关性很高的,今天的热点新闻,明天就没热度了,数据的冷热非常明显,这种场景就需要按照时间维度做分表,首先冷热数据做了分离(可以对冷热数据采用不同的存储方案来降低成本),其次, 很容止控制我数据库表的爆炸。像微博如果只按照用户维度区分,那么这个用户所有数据都在一张表里,这张表就是无限增长的,时间长了查询会越来越慢。二级索引,是我们里面一个比较特殊的场景,就是我要快速找到这个人所要发布的某一时段的微博时,通过二级索引快速定位。 分布式服务追踪系统 分布式追踪服务系统,当系统到千万级以后的时候,越来越庞杂,所解决的问题更偏向稳定性,性能和监控。刚才说用户只要有一个请求过来,你可以依赖你的服务RPC1、RPC2,你会发现RPC2又依赖RPC3、RPC4。分布式服务的时候一个痛点,就是说一个请求从用户过来之后,在后台不同的机器之间不停的调用并返回。 当你发现一个问题的时候,这些日志落在不同的机器上,你也不知道问题到底出在哪儿,各个服务之间互相隔离,互相之间没有建立关联。所以导致排查问题基本没有任何手段,就是出了问题没法儿解决。 我们要解决的问题,我们刚才说日志互相隔离,我们就要把它建立联系。建立联系我们就有一个请求ID,然后结合RPC框架, 服务治理功能。假设请求从客户端过来,其中包含一个ID 101,到服务A时仍然带有ID 101,然后调用RPC1的时候也会标识这是101 ,所以需要 一个唯一的 请求 ID 标识 递归迭代的传递到每一个 相关 节点。第二个,你做的时候,你不能说每个地方都加,对业务系统来说需要一个框架来完成这个工作, 这 个框架要 对业务 系 统 是最低侵入原 则 , 用 JAVA 的 话 就可以用 AOP,要做到零侵入的原则,就是对所有相关的中间件打点,从接口层组件(HTTP Client、HTTP Server)至到服务层组件(RPC Client、RPC Server),还有数据访问中间件的,这样业务系统只需要少量的配置信息就可以实现全链路监控 。为什么要用日志?服务化以后,每个服务可以用不同的开发语言, 考虑多种开发语言的兼容性 , 内部定 义标 准化的日志 是唯一且有效的办法。最后,如何构建基于GPS导航的路况监控?我们刚才讲分布式服务追踪。分布式服务追踪能解决的问题, 如果 单一用 户发现问题 后 , 可以通 过请 求 ID 快速找到 发 生 问题 的 节 点在什么,但是并没有解决如何发现问题。我们看现实中比较容易理解的道路监控,每辆车有GPS定位,我想看北京哪儿拥堵的时候,怎么做? 第一个 , 你肯定要知道每个 车 在什么位置,它走到哪儿了。其实可以说每个车上只要有一个标识,加上每一次流动的信息,就可以看到每个车流的位置和方向。 其次如何做 监 控和 报 警,我们怎么能了解道路的流量状况和负载,并及时报警。我们要定义这条街道多宽多高,单位时间可以通行多少辆车,这就是道路的容量。有了道路容量,再有道路的实时流量,我们就可以基于实习路况做预警? 对应于 分布式系 统 的话如何构建? 第一 , 你要 定义 每个服 务节 点它的 SLA A 是多少 ?SLA可以从系统的CPU占用率、内存占用率、磁盘占用率、QPS请求数等来定义,相当于定义系统的容量。 第二个 , 统计 线 上 动态 的流量,你要知道服务的平均QPS、最低QPS和最大QPS,有了流量和容量,就可以对系统做全面的监控和报警。 刚才讲的是理论,实际情况肯定比这个复杂。微博在春节的时候做许多活动,必须保障系统稳定,理论上你只要定义容量和流量就可以。但实际远远不行,为什么?有技术的因素,有人为的因素,因为不同的开发定义的流量和容量指标有主观性,很难全局量化标准,所以真正流量来了以后,你预先评估的系统瓶颈往往不正确。实际中我们在春节前主要采取了三个措施:第一,最简单的就是有降 级 的 预 案,流量超过系统容量后,先把哪些功能砍掉,需要有明确的优先级 。第二个, 线上全链路压测,就是把现在的流量放大到我们平常流量的五倍甚至十倍(比如下线一半的服务器,缩容而不是扩容),看看系统瓶颈最先发生在哪里。我们之前有一些例子,推测系统数据库会先出现瓶颈,但是实测发现是前端的程序先遇到瓶颈。第三,搭建在线 Docker 集群 , 所有业务共享备用的 Docker集群资源,这样可以极大的避免每个业务都预留资源,但是实际上流量没有增长造成的浪费。 总结 接下来说的是如何不停的学习和提升,这里以Java语言为例,首先, 一定要 理解 JAVA;第二步,JAVA完了以后,一定要 理 解 JVM;其次,还要 理解 操作系统;再次还是要了解一下 Design Pattern,这将告诉你怎么把过去的经验抽象沉淀供将来借鉴;还要学习 TCP/IP、 分布式系 统、数据结构和算法。

hiekay 2019-12-02 01:39:25 0 浏览量 回答数 0

回答

回楼主爱因的帖子 以前 旧的雅虎时期,  记得 人工服务,是直接上传身份证复印件,然后对方客服会打电话来确认,一会就解决好了。   现在 手机号码一过期,  邮箱被锁 彻底无语。  之前想改为  邮箱绑定的。也同需要  短信认证 和  人工服务。  打开人工服务, 也没有相关的连接。   干脆 叫 自助服务好了。     人工服务 在哪里?   万一有急事呢。  服务的应急通道呢 。 ------------------------- Re关于阿里云邮箱被锁问题邮箱急用。 麻烦亲,提供如下信息发送到 account@service.aliyun.com绑定新的手机号码,通过手机验证找回一下,谢谢! 1)、绑定的雅虎邮箱账号 2)、雅虎邮箱绑定阿里云邮箱的时间(提供到月份,必填) 3)、雅虎邮箱绑定阿里云邮箱时所在地区(提供到城市,必填) 4) 账号下绑定的原手机号码(当前绑定的手机号码,必填) 5)请提供账号所有者身份证正反面照片 6)如账号下手机不可用,请您提供能够正常使用的手机号码或者备用邮箱,以便通过验证为您设置后您可以自行修 ) 这个 列表 更是有点 扯谈 。  浪费时间。    谁能记住什么时候雅虎邮箱绑定阿里云的。 必填 ?  怎么填。  给我们查询的方法好吗? 用个邮箱还这么不省心。 直接在点开  人工服务 后, 设置专有界面。在专有 界面 ,一一输入好了(就像注册列表那种形式)。   为 什么 大家还需要 一一发送到 你指定的邮箱。 这边急用邮箱 。 无法解决。   ------------------------- Re关于阿里云邮箱被锁问题邮箱急用。 ------------------------- 回4楼newking的帖子 谁绑定的时候,还记得呀。   就是手机套餐 也是可以系统查的。 流程 也是 制定的。 不合理的话要流程干嘛 ------------------------- 回4楼newking的帖子 我现在  需要 修改手机绑定 ,  还让我提供旧的手机号码。 旧的手机号码 两年前就不用了。 就用了几天。 现在一直改不了, 还什么 阿里云绑定雅虎 的月份。 谁会记得这个。   再不行,以后这个邮箱就不用了。太不合理了。

爱因 2019-12-02 02:14:09 0 浏览量 回答数 0

问题

【Java学习全家桶】1460道Java热门问题,阿里百位技术专家答疑解惑

管理贝贝 2019-12-01 20:07:15 27612 浏览量 回答数 19

问题

阿里云-小程序云

问问小秘 2020-04-07 18:45:54 24 浏览量 回答数 1

回答

Rewin2003r2如何开放1433端口 如何打开1433端口 打开网络连接属性--高级--设置--例外--添加端口(输入端口号) windows203+sql   server   2000无法打开1433端口   1.如果你是win2003,那么一定要安装sql的补丁sp3a   检查你的SQL有没有打补丁,没有的话要打上补丁,检查的方法是在查询分析器中运行:   select   @@version   如果出来的版本号是8.00.760以下,则表明你未安装sp3的补丁,要装上.   SQL补丁下载:   全部补丁的位置   http://www.microsoft.com/downloads/details.aspx?displaylang=zh-cn&FamilyID=9032f608-160a-4537-a2b6-4cb265b80766   注意下载后,执行的时候是解压,要在解压后的目录中执行setup.bat才是真正的安装   2.SQL   Server连接中的四个最常见错误:   一. "SQL   Server   不存在或访问被拒绝 "   这个是最复杂的,错误发生的原因比较多,需要检查的方面也比较多.   一般说来,有以下几种可能性:   1,SQL   Server名称或IP地址拼写有误   2,服务器端网络配置有误   3,客户端网络配置有误   要解决这个问题,我们一般要遵循以下的步骤来一步步找出导致错误的原因.   =============   首先,检查网络物理连接   =============   ping   <服务器IP地址/服务器名称>   如果   ping   <服务器IP地址>   不成功,说明物理连接有问题,这时候要检查硬件设备,如网卡,HUB,路由器等.   还有一种可能是由于客户端和服务器之间安装有防火墙软件造成的,比如   ISA   Server.防火墙软件可能会屏蔽对   ping,telnet   等的响应   因此在检查连接问题的时候,我们要先把防火墙软件暂时关闭,或者打开所有被封闭的端口.   如果ping   <服务器IP地址>   成功而,ping   <服务器名称>   失败   则说明名字解析有问题,这时候要检查   DNS   服务是否正常.   有时候客户端和服务器不在同一个局域网里面,这时候很可能无法直接使用服务器名称来标识该服务器,这时候我们可以使用HOSTS文件来进行名字解析,   具体的方法是:   1.使用记事本打开HOSTS文件(一般情况下位于C:\WINNT\system32\drivers\etc).   添加一条IP地址与服务器名称的对应记录,如:   172.168.10.24   myserver   2.或在   SQL   Server   的客户端网络实用工具里面进行配置,后面会有详细说明.   =============   其次,使用   telnet   命令检查SQL   Server服务器工作状态   =============   telnet   <服务器IP地址>   1433   如果命令执行成功,可以看到屏幕一闪之后光标在左上角不停闪动,这说明   SQL   Server   服务器工作正常,并且正在监听1433端口的   TCP/IP   连接   如果命令返回 "无法打开连接 "的错误信息,则说明服务器端没有启动   SQL   Server   服务,   也可能服务器端没启用   TCP/IP   协议,或者服务器端没有在   SQL   Server   默认的端口1433上监听.   =============接着,我们要到服务器上检查服务器端的网络配置,检查是否启用了命名管道.是否启用了   TCP/IP   协议等等   =============   可以利用   SQL   Server   自带的服务器网络使用工具来进行检查.   点击:程序   --   Microsoft   SQL   Server   --   服务器网络使用工具   打开该工具后,在 "常规 "中可以看到服务器启用了哪些协议.   一般而言,我们启用命名管道以及   TCP/IP   协议.   点中   TCP/IP   协议,选择 "属性 ",我们可以来检查   SQK   Server   服务默认端口的设置   一般而言,我们使用   SQL   Server   默认的1433端口.如果选中 "隐藏服务器 ",则意味着客户端无法通过枚举服务器来看到这台服务器,起到了保护的作用,但不影响连接.   =============   接下来我们要到客户端检查客户端的网络配置   =============   我们同样可以利用   SQL   Server   自带的客户端网络使用工具来进行检查,   所不同的是这次是在客户端来运行这个工具.   点击:程序   --   Microsoft   SQL   Server   --   客户端网络使用工具   打开该工具后,在 "常规 "项中,可以看到客户端启用了哪些协议.   一般而言,我们同样需要启用命名管道以及   TCP/IP   协议.   点击   TCP/IP   协议,选择 "属性 ",可以检查客户端默认连接端口的设置,该端口必须与服务器一致.   单击 "别名 "选项卡,还可以为服务器配置别名.服务器的别名是用来连接的名称,   连接参数中的服务器是真正的服务器名称,两者可以相同或不同.别名的设置与使用HOSTS文件有相似之处.   通过以上几个方面的检查,基本上可以排除第一种错误.   -----------------------------------------------------------------------------   二. "无法连接到服务器,用户xxx登陆失败 "   该错误产生的原因是由于SQL   Server使用了 "仅   Windows "的身份验证方式,   因此用户无法使用SQL   Server的登录帐户(如   sa   )进行连接.解决方法如下所示:   1.在服务器端使用企业管理器,并且选择 "使用   Windows   身份验证 "连接上   SQL   Server   在企业管理器中   --右键你的服务器实例(就是那个有绿色图标的)   --编辑SQL   Server注册属性   --选择 "使用windows身份验证 "   2.展开 "SQL   Server组 ",鼠标右键点击SQL   Server服务器的名称,选择 "属性 ",再选择 "安全性 "选项卡   3.在 "身份验证 "下,选择 "SQL   Server和   Windows   ".   4.重新启动SQL   Server服务.   在以上解决方法中,如果在第   1   步中使用 "使用   Windows   身份验证 "连接   SQL   Server   失败,   那就通过修改注册表来解决此问题:   1.点击 "开始 "- "运行 ",输入regedit,回车进入注册表编辑器   2.依次展开注册表项,浏览到以下注册表键:   [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\MSSQLServer]   3.在屏幕右方找到名称 "LoginMode ",双击编辑双字节值   4.将原值从1改为2,点击 "确定 "   5.关闭注册表编辑器   6.重新启动SQL   Server服务.   此时,用户可以成功地使用sa在企业管理器中新建SQL   Server注册,   但是仍然无法使用Windows身份验证模式来连接SQL   Server.   这是因为在   SQL   Server   中有两个缺省的登录帐户:   BUILTIN\Administrators   <机器名> \Administrator   被删除.   要恢复这两个帐户,可以使用以下的方法:   1.打开企业管理器,展开服务器组,然后展开服务器   2.展开 "安全性 ",右击 "登录 ",然后单击 "新建登录 "   3.在 "名称 "框中,输入   BUILTIN\Administrators   4.在 "服务器角色 "选项卡中,选择 "System   Administrators "   5.点击 "确定 "退出   6.使用同样方法添加   <机器名> \Administrator   登录.   说明:   以下注册表键:   HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\MSSQLServer\LoginMode   的值决定了SQL   Server将采取何种身份验证模式.   1.表示使用 "Windows   身份验证 "模式   2.表示使用混合模式(Windows   身份验证和   SQL   Server   身份验证).   -----------------------------------------------------------------------------   三.提示连接超时   如果遇到第三个错误,一般而言表示客户端已经找到了这台服务器,并且可以进行连接,   不过是由于连接的时间大于允许的时间而导致出错.   这种情况一般会发生在当用户在Internet上运行企业管理器来注册另外一台同样在Internet上的服务器,   并且是慢速连接时,有可能会导致以上的超时错误.有些情况下,由于局域网的网络问题,也会导致这样的错误.   要解决这样的错误,可以修改客户端的连接超时设置.   默认情况下,通过企业管理器注册另外一台SQL   Server的超时设置是   4   秒,   而查询分析器是   15   秒(这也是为什么在企业管理器里发生错误的可能性比较大的原因).   具体步骤为:   企业管理器中的设置:   1.在企业管理器中,选择菜单上的 "工具 ",再选择 "选项 "   2.在弹出的 "SQL   Server企业管理器属性 "窗口中,点击 "高级 "选项卡   3.在 "连接设置 "下的 "登录超时(秒) "右边的框中输入一个比较大的数字,如   20.   查询分析器中的设置:   工具   --   选项   --   连接   --   将登录超时设置为一个较大的数字   ---------------------------------------------------------------------------------   四.大部分机都用Tcp/ip才能成功,有次我发现用Named   Pipes才可以?   回复人:   leimin(黄山光明顶)   这是因为在WINDOWS   2000以后的操作系统中,MS为解决SQL   SERVER的安全问题将TCP/IP配置   为SQLSERVER的默认连接协议,你可以在CLIENT   NETWORK   UTILITY中看到TCP/IP和NAME   PIPE   的顺序。   你也可以在:   [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\Client\SuperSocketNetLib]   "ProtocolOrder "=hex(7):74,00,63,00,70,00,00,00,00,00   看到默认的协议。   2.怎么在程序中更改Named   Pipes   ,   Tcp/ip   ,其sql语句怎么写?   你可以在上面提到的注册表的位置修改:   CLIENT端:   [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\Client\SuperSocketNetLib]   "ProtocolOrder "=hex(7):74,00,63,00,70,00,00,00,00,00   SERVER端:   [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\MSSQLServer\SuperSocketNetLib]   "ProtocolOrder "=hex(7):74,00,63,00,70,00,00,00,00,00   SQL中,连接的配置就这两个方面   SQL   Server服务器--开始--程序--Microsoft   SQL   Server   --服务器网络实用工具   --启用   WinSock代理   --代理地址:(sqlserver服务器IP)   --代理端口--1433   ---确定   客户端   开始--程序--Microsoft   SQL   Server--客户端网络实用工具   --别名--添加   --网络库选择 "tcp/ip "--服务器别名输入SQL服务器名   --连接参数--服务器名称中输入SQL服务器ip地址   --如果你修改了SQL的端口,取消选择 "动态决定端口 ",并输入对应的端口号   也有人说:打SQL   的sp3补丁后就自动打开了

superwoman 2019-12-01 23:46:04 0 浏览量 回答数 0

问题

【精品问答】python技术1000问(1)

问问小秘 2019-12-01 21:57:48 454222 浏览量 回答数 19

问题

【javascript学习全家桶】934道javascript热门问题,阿里百位技术专家答疑解惑

管理贝贝 2019-12-01 20:07:22 6202 浏览量 回答数 1

回答

你这个问题可以抽象一下。令每个用户和每个IP存在一个以时间轴为基础的登陆数组(一维,下标是历史时间到现在的时间差,值是对应时间片比如分钟内的总登陆次数)。需要有以下基准动作。 每个时间,比如分钟,对整个数组进行移动。 当有新登陆上来,检测整个时间窗内的登陆总次数,比如你的时间窗是30分钟。如果总次数超过你设定的K(30),则对其禁止T(30)。如果没有超过K(30),你对时间窗最后的数据,进行较窄窗口(例如10分钟)再判断。如果总次数超过 K(10) 则对其禁止T(10)。如果小于 K(10),则对最小窗口进行判断,例如10分钟,如果总次数超过K(1),则对其禁止 T(10)。 禁止过程中,该IP,该用户被直接否定,但是上述对应数组的内容,仍然根据时间进行移动修正。将较老的数据刷掉。 当然这个是原理算法。如果这个算法思路符合你的目标。则后续会需要有优化的简化算法。基本思路是压缩上述所谓“数组”的存储空间,以及压缩上述刷新和移动,判断的计算步骤。 上述具备IP和用户对应的数组是动态的。每分钟,刷新时,需要将即便下一分钟产生一次登陆但不存在禁止的数组给删除掉。 而所谓数组,是通过bit来描述,比如每4个bit表示当前的分钟内的登录次数,如果是15次以上,假设你一定会禁止他,则仍然等于15次。类似这样。 而在刷新左移时,对每个分钟的登陆次数,修正加权值,并反馈到最新存储空间内,此时所有的判断都集中在最新存储空间判断,而不用任意判断都要累加操作。这种近似的优化算法,只要能达到目的就可以了。没有必要考虑因为精度问题导致结果的不完全一致性。######回复 @waney : 其实很简单。但是我难得搞公式编辑器了。######好复杂 听不懂,谢谢你。###### 登陆验证码, 登陆验证问题, 同用户名访问失败多次直接封用户一段时间, 如果还是继续尝试失败,直接封IP。 以上为个人意见。######回复 @JustForFly : 因为discuz有这些,根本起不到作用。######那我就不知道你还想要什么了######discuz 这些都有的###### 增加验证码,可避免一些简单的模拟登录; 增加登录失败次数检查,超过N次后禁用用户或IP若干时间; ######discuz 都有的######直接把用户隐射到MAP,不用查数据库,直接查询MAP ######先把数据库的用户查出来,引射到一个map对象,然后用户登录就直接去map对象里面匹配,比如5分钟或者10分钟把在把map里面的用户和数据库同步一次,呵呵,这个办法有点傻。######这个怎讲?听不懂。######这个事情很麻烦,一楼的方法是有效的。但是是针对用户存在IP绑定信息的情况下。当然大多数时刻也是如此。如果抽象来看,楼主也说了,模拟提交,或者从不同IP上大量测试用户名的方式,回避一楼的方案。这个问题但抽象的来看,几乎无解,因为问题和设计目标是矛盾的。还要看楼主其他方面的需求。最终想防止什么。 ######回复 @waney : 延迟,如果发现不匹配,SERVER等待2到3秒后在告知客户端。但客户端会采用无论是否回复,仍然发送新用户方式。######回复 @中山野鬼 : ip是变化的,验证那些都没有用,如果拒绝这类特定请求的频率过高的。######回复 @waney : 两个方案。延迟,绑定IP的锁定。前者方法很多,那些图片内部字符识别本身就是个延迟目的。不是考智商用的。######有人模拟大量提交,匹配然后获得匹配正确的用户名和密码。###### 既然是字典匹配 那肯定会出现大量 同一账号使用不同的错误密码登陆的记录了.. 可以从这方面下手...我的方案是:当检测到某一账号在一段时间内连续输错密码达到一定次数 则帐号进入内部锁定状态.当该帐号成功登陆之后,将无法进行任何操作.而是会进入一个锁定页面. 系统会要求该帐号进行解锁操作.解锁成功后,才能继续操作. 至于解锁操作的话最简单就是发一封邮件给用户注册邮箱,用户根据邮件提示解锁. 这样即使别人凭字典匹配到了密码也没用.而且一旦用户登陆之后发现自己的帐号被锁定就知道肯定有人尝试破解自己帐号的密码.那么此时也可以提示用户修改密码.这样最大限度的可以保证帐号安全了。######而且我没说要禁止...只是帐号置为 内部锁定状态. 你只需要检测用户是否登陆的时候检测是否处于锁定状态就可以了. 基本上只需要加一个字段和一小段代码的######呵呵 如果别人第一次就匹配到了密码 你怎么能知道这个人是不是帐号的拥有者呢. 不可能有100% 完美解决的方案的.######你不能保证别人不会第一次就匹配到正确的啊。而且全都加入禁止,那量不是一般的大啊,所以 我想寻求一个彻底的办法就是如何设置条件抛弃这个请求。###### 当然 上述方法也有缺陷.如果有人恶意用错误的密码尝试登陆某一账号将导致该帐号的用户每次登陆都要进行解锁操作. 那么就还需要一些其他的补充措施来进行完善了.例如:可设置一段时间内 帐号禁止进入锁定状态。###### 楼主,你这个是个博弈的过程。主要策略是延缓对方或者将对方行为区别于正常用户。如果是绑定IP比如3,4次登陆就锁定1分钟,对方可以替换IP,只要IP数量N足够多。上限仍然由他的IP数量决定。 如果你认为1分钟内如果登陆4次以上,就锁定这个IP30分钟。他完全可以每个IP每分钟就登陆4次,则没分钟也达到了4万次的用户访问检测。 但攻击者的IP数量如果不是非常多时,你可以尝试累计对IP进行长时间累计滤波观测。如果一个IP在1分钟内登录4次,在5分钟内登陆 10次,在30分钟内登陆 20次,则均对其锁定。 这样的目的是降低攻击者独立IP的使用价值。以和传统用户行为区别开来。 我先吃饭。回头给你个算法描述,解决这种问题。动态时间窗内的信号检测。######谢谢。

kun坤 2020-06-08 11:25:44 0 浏览量 回答数 0

问题

【精品问答】大数据计算技术1000问

问问小秘 2019-12-01 21:57:13 6895 浏览量 回答数 2

问题

程序员报错QA大分享(1)

问问小秘 2020-06-18 15:46:14 8 浏览量 回答数 1

回答

详细解答可以参考官方帮助文档 如果普通远程连接软件(比如 PuTTY、Xshell、SecureCRT 等)无法使用时,您可以使用云服务器 ECS 管理控制台的 管理终端 连接 ECS 实例,查看云服务器操作界面当时的状态。如果您拥有操作权限,可以连接到服务器进行操作配置。本文将介绍如何使用云服务器 ECS 管理控制台的 管理终端 连接 ECS 实例,并说明如何 修改远程连接密码、复制长命令,以及使用管理终端的一些常见问题及处理方法。 使用场景 管理终端 适用的场景包括但不限于: 如果您的实例引导速度慢(如启动自检),您可以通过 管理终端 查看进度。 如果您的实例内部设置错误(比如,误操作开启了防火墙),导致无法使用软件远程连接,您可以通过 管理终端 连接到实例后修改设置(比如关闭防火墙)。 如果应用消耗 CPU 或带宽比较高(例如云服务器被肉鸡,进程 CPU或带宽跑满),导致无法远程连接,您可以通过 管理终端 连接到 ECS 实例,结束异常进程等。 前提条件 您已经创建了实例。 您已经设置了实例登录密码。如果未设置,您可以 重置实例密码。 操作步骤 登录 云服务器 ECS 管理控制台。 在左侧导航栏里,单击 实例。 在 实例列表 页上,选择目标地域。 在实例列表里,找到需要连接的实例,在 操作 列,单击 远程连接。 连接 管理终端: 使用主账号第一次连接 管理终端 时,按以下步骤连接管理终端: 在弹出的 远程连接密码 对话框,复制密码。 说明 连接密码仅在第一次连接管理终端时显示一次。如果您以后需要使用这个密码连接管理终端,请记下该密码。 如果您以RAM用户身份第一次连接 管理终端,不会出现这个对话框。 单击 关闭。 在弹出的 输入远程连接密码 对话框中粘贴密码后,单击 确定,开始连接 管理终端。 如果您忘记了密码或者以RAM用户身份第一次连接 管理终端 时,按以下步骤操作: 修改远程连接密码。 单击界面左上角的 发送远程命令 > 连接远程连接。 在弹出的 输入远程连接密码 对话框中,输入刚修改的新密码。 单击 确定 ,开始连接 管理终端。 使用主账号或RAM用户身份再次连接 管理终端 时,在弹出的 输入远程连接密码 对话框中输入密码,单击 确定,开始连接 管理终端。 登录 ECS 实例。根据实例的操作系统,您应执行不同的操作步骤: 如果是 Linux 实例,输入用户名 root 和实例登录密码。 说明 Linux 系统一般不会显示密码输入过程。 您可以单击界面左上角的 发送远程命令 > CTRL+ALT+Fx(x 为 1 − 10),切换不同的 管理终端 连接 Linux 实例执行不同的操作。 如果出现黑屏,可能是因为 Linux 实例处于休眠状态,单击键盘上任意键即可唤醒。 如果是 Windows 实例,在 管理终端 界面的左上角单击 发送远程命令 > CTRL+ALT+DELETE,进入 Windows 实例的登录界面。输入用户名和密码即可登录。 其他操作 修改远程连接密码 如果您希望使用方便记忆的远程连接密码,或者忘记了密码,您可以按照以下步骤修改远程连接密码。 说明 如果您要连接的不是 I/O 优化实例,修改密码后,您需要在 ECS管理控制台 重启实例使新密码生效。重启操作需要停止您的实例,中断您的业务,所以请谨慎执行。 进入 管理终端 界面。 关闭弹出的 远程连接密码 对话框或 输入远程连接密码 对话框。 在界面的右上角,单击 修改远程连接密码。 在弹出的 修改远程连接密码 对话框里,输入新密码后,单击 确定,关闭对话框。 新密码生效: 如果您要连接的是 I/O 优化实例,新密码会立即生效。 如果您要连接的是非 I/O 优化实例,您必须先在控制台上 重启实例,密码才会生效。在 ECS 实例内部重启无效。 复制长命令 如果连接的是 Linux 实例,您可以使用 复制命令输入 功能输入比较长的文本、文件下载地址等。 进入 管理终端 界面。 在界面右上角,单击 复制命令输入 。 在弹出的 复制粘贴命令 对话框中,输入具体的命令后,单击 确定,即可将命令复制到 Linux 的命令行界面。 管理终端 FAQ 管理终端是独享的吗? 目前是独享的。如果一个用户已经登录,其他用户则无法再登录。 忘记了远程连接密码,怎么办? 如果忘记远程连接密码,您可以 修改远程连接密码。 为什么修改了远程连接密码还是连不上管理终端? 如果您要连接的不是 I/O 优化实例,您需要在管理控制台上 重启实例,新密码才会生效。在 ECS 实例内部重启无效。 管理终端提示 授权验证失败,怎么解决? 输入远程连接密码后,提示 授权验证失败,可能是因为您输入了错误的远程连接密码,所以,您应该: 确认您输入了正确的远程连接密码。 如果您忘了密码,可以 修改远程连接密码 之后再重试。 如果要连接非 I/O 优化实例,修改密码后,您需要先在控制台上 重启实例 使新的远程连接密码生效。 连接到管理终端后出现黑屏,怎么办? 连接到管理终端后出现黑屏,说明系统处于休眠状态。根据操作系统不同,您应执行不同的操作: 如果是 Linux 实例,您可以按任意键激活该实例,进入登录界面。 如果是 Windows 实例出现持续黑,您可以在界面左上角单击 发送远程命令 > CTRL+ALT+DELETE ,进入登录界面。 管理终端无法访问了,怎么办? 您可以使用 Chrome 浏览器进入管理终端界面,在键盘上按 F12 键显示开发者工具,然后分析 Console 中显示的信息。 我使用 IE8.0,为什么无法使用管理终端? 管理终端目前仅支持 IE10 及以上的 IE 浏览器。您可以下载最新的 IE 浏览器或 Chrome 浏览器。 建议使用 Chrome 浏览器。阿里云的控制台对 Chrome 浏览器的兼容性更好。 我用 Firefox 浏览器打开管理终端会报错 安全连接失败,怎么办? 报错原因:可能您使用的 Firefox 版本没有共用的加密算法。 建议使用 Chrome 浏览器。阿里云的控制台对 Chrome 浏览器的兼容性更好。 相关文档 在PC端,您可以使用其他方式远程连接ECS实例: 如果是Linux实例: 使用SSH密钥对连接Linux实例 使用用户名密码验证连接 Linux 实例 如果是Windows实例:使用软件连接Windows实例 在移动设备端,您可以参考 在移动设备上连接实例

2019-12-01 22:56:55 0 浏览量 回答数 0

回答

详细解答可以参考官方帮助文档 如果普通远程连接软件(比如 PuTTY、Xshell、SecureCRT 等)无法使用时,您可以使用云服务器 ECS 管理控制台的 管理终端 连接 ECS 实例,查看云服务器操作界面当时的状态。如果您拥有操作权限,可以连接到服务器进行操作配置。本文将介绍如何使用云服务器 ECS 管理控制台的 管理终端 连接 ECS 实例,并说明如何 修改远程连接密码、复制长命令,以及使用管理终端的一些常见问题及处理方法。 使用场景 管理终端 适用的场景包括但不限于: 如果您的实例引导速度慢(如启动自检),您可以通过 管理终端 查看进度。 如果您的实例内部设置错误(比如,误操作开启了防火墙),导致无法使用软件远程连接,您可以通过 管理终端 连接到实例后修改设置(比如关闭防火墙)。 如果应用消耗 CPU 或带宽比较高(例如云服务器被肉鸡,进程 CPU或带宽跑满),导致无法远程连接,您可以通过 管理终端 连接到 ECS 实例,结束异常进程等。 前提条件 您已经创建了实例。 您已经设置了实例登录密码。如果未设置,您可以 重置实例密码。 操作步骤 登录 云服务器 ECS 管理控制台。 在左侧导航栏里,单击 实例。 在 实例列表 页上,选择目标地域。 在实例列表里,找到需要连接的实例,在 操作 列,单击 远程连接。 连接 管理终端: 使用主账号第一次连接 管理终端 时,按以下步骤连接管理终端: 在弹出的 远程连接密码 对话框,复制密码。 说明 连接密码仅在第一次连接管理终端时显示一次。如果您以后需要使用这个密码连接管理终端,请记下该密码。 如果您以RAM用户身份第一次连接 管理终端,不会出现这个对话框。 单击 关闭。 在弹出的 输入远程连接密码 对话框中粘贴密码后,单击 确定,开始连接 管理终端。 如果您忘记了密码或者以RAM用户身份第一次连接 管理终端 时,按以下步骤操作: 修改远程连接密码。 单击界面左上角的 发送远程命令 > 连接远程连接。 在弹出的 输入远程连接密码 对话框中,输入刚修改的新密码。 单击 确定 ,开始连接 管理终端。 使用主账号或RAM用户身份再次连接 管理终端 时,在弹出的 输入远程连接密码 对话框中输入密码,单击 确定,开始连接 管理终端。 登录 ECS 实例。根据实例的操作系统,您应执行不同的操作步骤: 如果是 Linux 实例,输入用户名 root 和实例登录密码。 说明 Linux 系统一般不会显示密码输入过程。 您可以单击界面左上角的 发送远程命令 > CTRL+ALT+Fx(x 为 1 − 10),切换不同的 管理终端 连接 Linux 实例执行不同的操作。 如果出现黑屏,可能是因为 Linux 实例处于休眠状态,单击键盘上任意键即可唤醒。 如果是 Windows 实例,在 管理终端 界面的左上角单击 发送远程命令 > CTRL+ALT+DELETE,进入 Windows 实例的登录界面。输入用户名和密码即可登录。 其他操作 修改远程连接密码 如果您希望使用方便记忆的远程连接密码,或者忘记了密码,您可以按照以下步骤修改远程连接密码。 说明 如果您要连接的不是 I/O 优化实例,修改密码后,您需要在 ECS管理控制台 重启实例使新密码生效。重启操作需要停止您的实例,中断您的业务,所以请谨慎执行。 进入 管理终端 界面。 关闭弹出的 远程连接密码 对话框或 输入远程连接密码 对话框。 在界面的右上角,单击 修改远程连接密码。 在弹出的 修改远程连接密码 对话框里,输入新密码后,单击 确定,关闭对话框。 新密码生效: 如果您要连接的是 I/O 优化实例,新密码会立即生效。 如果您要连接的是非 I/O 优化实例,您必须先在控制台上 重启实例,密码才会生效。在 ECS 实例内部重启无效。 复制长命令 如果连接的是 Linux 实例,您可以使用 复制命令输入 功能输入比较长的文本、文件下载地址等。 进入 管理终端 界面。 在界面右上角,单击 复制命令输入 。 在弹出的 复制粘贴命令 对话框中,输入具体的命令后,单击 确定,即可将命令复制到 Linux 的命令行界面。 管理终端 FAQ 管理终端是独享的吗? 目前是独享的。如果一个用户已经登录,其他用户则无法再登录。 忘记了远程连接密码,怎么办? 如果忘记远程连接密码,您可以 修改远程连接密码。 为什么修改了远程连接密码还是连不上管理终端? 如果您要连接的不是 I/O 优化实例,您需要在管理控制台上 重启实例,新密码才会生效。在 ECS 实例内部重启无效。 管理终端提示 授权验证失败,怎么解决? 输入远程连接密码后,提示 授权验证失败,可能是因为您输入了错误的远程连接密码,所以,您应该: 确认您输入了正确的远程连接密码。 如果您忘了密码,可以 修改远程连接密码 之后再重试。 如果要连接非 I/O 优化实例,修改密码后,您需要先在控制台上 重启实例 使新的远程连接密码生效。 连接到管理终端后出现黑屏,怎么办? 连接到管理终端后出现黑屏,说明系统处于休眠状态。根据操作系统不同,您应执行不同的操作: 如果是 Linux 实例,您可以按任意键激活该实例,进入登录界面。 如果是 Windows 实例出现持续黑,您可以在界面左上角单击 发送远程命令 > CTRL+ALT+DELETE ,进入登录界面。 管理终端无法访问了,怎么办? 您可以使用 Chrome 浏览器进入管理终端界面,在键盘上按 F12 键显示开发者工具,然后分析 Console 中显示的信息。 我使用 IE8.0,为什么无法使用管理终端? 管理终端目前仅支持 IE10 及以上的 IE 浏览器。您可以下载最新的 IE 浏览器或 Chrome 浏览器。 建议使用 Chrome 浏览器。阿里云的控制台对 Chrome 浏览器的兼容性更好。 我用 Firefox 浏览器打开管理终端会报错 安全连接失败,怎么办? 报错原因:可能您使用的 Firefox 版本没有共用的加密算法。 建议使用 Chrome 浏览器。阿里云的控制台对 Chrome 浏览器的兼容性更好。 相关文档 在PC端,您可以使用其他方式远程连接ECS实例: 如果是Linux实例: 使用SSH密钥对连接Linux实例 使用用户名密码验证连接 Linux 实例 如果是Windows实例:使用软件连接Windows实例 在移动设备端,您可以参考 在移动设备上连接实例

2019-12-01 22:56:51 0 浏览量 回答数 0

回答

详细解答可以参考官方帮助文档 如果普通远程连接软件(比如 PuTTY、Xshell、SecureCRT 等)无法使用时,您可以使用云服务器 ECS 管理控制台的 管理终端 连接 ECS 实例,查看云服务器操作界面当时的状态。如果您拥有操作权限,可以连接到服务器进行操作配置。本文将介绍如何使用云服务器 ECS 管理控制台的 管理终端 连接 ECS 实例,并说明如何 修改远程连接密码、复制长命令,以及使用管理终端的一些常见问题及处理方法。 使用场景 管理终端 适用的场景包括但不限于: 如果您的实例引导速度慢(如启动自检),您可以通过 管理终端 查看进度。 如果您的实例内部设置错误(比如,误操作开启了防火墙),导致无法使用软件远程连接,您可以通过 管理终端 连接到实例后修改设置(比如关闭防火墙)。 如果应用消耗 CPU 或带宽比较高(例如云服务器被肉鸡,进程 CPU或带宽跑满),导致无法远程连接,您可以通过 管理终端 连接到 ECS 实例,结束异常进程等。 前提条件 您已经创建了实例。 您已经设置了实例登录密码。如果未设置,您可以 重置实例密码。 操作步骤 登录 云服务器 ECS 管理控制台。 在左侧导航栏里,单击 实例。 在 实例列表 页上,选择目标地域。 在实例列表里,找到需要连接的实例,在 操作 列,单击 远程连接。 连接 管理终端: 使用主账号第一次连接 管理终端 时,按以下步骤连接管理终端: 在弹出的 远程连接密码 对话框,复制密码。 说明 连接密码仅在第一次连接管理终端时显示一次。如果您以后需要使用这个密码连接管理终端,请记下该密码。 如果您以RAM用户身份第一次连接 管理终端,不会出现这个对话框。 单击 关闭。 在弹出的 输入远程连接密码 对话框中粘贴密码后,单击 确定,开始连接 管理终端。 如果您忘记了密码或者以RAM用户身份第一次连接 管理终端 时,按以下步骤操作: 修改远程连接密码。 单击界面左上角的 发送远程命令 > 连接远程连接。 在弹出的 输入远程连接密码 对话框中,输入刚修改的新密码。 单击 确定 ,开始连接 管理终端。 使用主账号或RAM用户身份再次连接 管理终端 时,在弹出的 输入远程连接密码 对话框中输入密码,单击 确定,开始连接 管理终端。 登录 ECS 实例。根据实例的操作系统,您应执行不同的操作步骤: 如果是 Linux 实例,输入用户名 root 和实例登录密码。 说明 Linux 系统一般不会显示密码输入过程。 您可以单击界面左上角的 发送远程命令 > CTRL+ALT+Fx(x 为 1 − 10),切换不同的 管理终端 连接 Linux 实例执行不同的操作。 如果出现黑屏,可能是因为 Linux 实例处于休眠状态,单击键盘上任意键即可唤醒。 如果是 Windows 实例,在 管理终端 界面的左上角单击 发送远程命令 > CTRL+ALT+DELETE,进入 Windows 实例的登录界面。输入用户名和密码即可登录。 其他操作 修改远程连接密码 如果您希望使用方便记忆的远程连接密码,或者忘记了密码,您可以按照以下步骤修改远程连接密码。 说明 如果您要连接的不是 I/O 优化实例,修改密码后,您需要在 ECS管理控制台 重启实例使新密码生效。重启操作需要停止您的实例,中断您的业务,所以请谨慎执行。 进入 管理终端 界面。 关闭弹出的 远程连接密码 对话框或 输入远程连接密码 对话框。 在界面的右上角,单击 修改远程连接密码。 在弹出的 修改远程连接密码 对话框里,输入新密码后,单击 确定,关闭对话框。 新密码生效: 如果您要连接的是 I/O 优化实例,新密码会立即生效。 如果您要连接的是非 I/O 优化实例,您必须先在控制台上 重启实例,密码才会生效。在 ECS 实例内部重启无效。 复制长命令 如果连接的是 Linux 实例,您可以使用 复制命令输入 功能输入比较长的文本、文件下载地址等。 进入 管理终端 界面。 在界面右上角,单击 复制命令输入 。 在弹出的 复制粘贴命令 对话框中,输入具体的命令后,单击 确定,即可将命令复制到 Linux 的命令行界面。 管理终端 FAQ 管理终端是独享的吗? 目前是独享的。如果一个用户已经登录,其他用户则无法再登录。 忘记了远程连接密码,怎么办? 如果忘记远程连接密码,您可以 修改远程连接密码。 为什么修改了远程连接密码还是连不上管理终端? 如果您要连接的不是 I/O 优化实例,您需要在管理控制台上 重启实例,新密码才会生效。在 ECS 实例内部重启无效。 管理终端提示 授权验证失败,怎么解决? 输入远程连接密码后,提示 授权验证失败,可能是因为您输入了错误的远程连接密码,所以,您应该: 确认您输入了正确的远程连接密码。 如果您忘了密码,可以 修改远程连接密码 之后再重试。 如果要连接非 I/O 优化实例,修改密码后,您需要先在控制台上 重启实例 使新的远程连接密码生效。 连接到管理终端后出现黑屏,怎么办? 连接到管理终端后出现黑屏,说明系统处于休眠状态。根据操作系统不同,您应执行不同的操作: 如果是 Linux 实例,您可以按任意键激活该实例,进入登录界面。 如果是 Windows 实例出现持续黑,您可以在界面左上角单击 发送远程命令 > CTRL+ALT+DELETE ,进入登录界面。 管理终端无法访问了,怎么办? 您可以使用 Chrome 浏览器进入管理终端界面,在键盘上按 F12 键显示开发者工具,然后分析 Console 中显示的信息。 我使用 IE8.0,为什么无法使用管理终端? 管理终端目前仅支持 IE10 及以上的 IE 浏览器。您可以下载最新的 IE 浏览器或 Chrome 浏览器。 建议使用 Chrome 浏览器。阿里云的控制台对 Chrome 浏览器的兼容性更好。 我用 Firefox 浏览器打开管理终端会报错 安全连接失败,怎么办? 报错原因:可能您使用的 Firefox 版本没有共用的加密算法。 建议使用 Chrome 浏览器。阿里云的控制台对 Chrome 浏览器的兼容性更好。 相关文档 在PC端,您可以使用其他方式远程连接ECS实例: 如果是Linux实例: 使用SSH密钥对连接Linux实例 使用用户名密码验证连接 Linux 实例 如果是Windows实例:使用软件连接Windows实例 在移动设备端,您可以参考 在移动设备上连接实例

2019-12-01 22:56:52 0 浏览量 回答数 0

回答

详细解答可以参考官方帮助文档 如果普通远程连接软件(比如 PuTTY、Xshell、SecureCRT 等)无法使用时,您可以使用云服务器 ECS 管理控制台的 管理终端 连接 ECS 实例,查看云服务器操作界面当时的状态。如果您拥有操作权限,可以连接到服务器进行操作配置。本文将介绍如何使用云服务器 ECS 管理控制台的 管理终端 连接 ECS 实例,并说明如何 修改远程连接密码、复制长命令,以及使用管理终端的一些常见问题及处理方法。 使用场景 管理终端 适用的场景包括但不限于: 如果您的实例引导速度慢(如启动自检),您可以通过 管理终端 查看进度。 如果您的实例内部设置错误(比如,误操作开启了防火墙),导致无法使用软件远程连接,您可以通过 管理终端 连接到实例后修改设置(比如关闭防火墙)。 如果应用消耗 CPU 或带宽比较高(例如云服务器被肉鸡,进程 CPU或带宽跑满),导致无法远程连接,您可以通过 管理终端 连接到 ECS 实例,结束异常进程等。 前提条件 您已经创建了实例。 您已经设置了实例登录密码。如果未设置,您可以 重置实例密码。 操作步骤 登录 云服务器 ECS 管理控制台。 在左侧导航栏里,单击 实例。 在 实例列表 页上,选择目标地域。 在实例列表里,找到需要连接的实例,在 操作 列,单击 远程连接。 连接 管理终端: 使用主账号第一次连接 管理终端 时,按以下步骤连接管理终端: 在弹出的 远程连接密码 对话框,复制密码。 说明 连接密码仅在第一次连接管理终端时显示一次。如果您以后需要使用这个密码连接管理终端,请记下该密码。 如果您以RAM用户身份第一次连接 管理终端,不会出现这个对话框。 单击 关闭。 在弹出的 输入远程连接密码 对话框中粘贴密码后,单击 确定,开始连接 管理终端。 如果您忘记了密码或者以RAM用户身份第一次连接 管理终端 时,按以下步骤操作: 修改远程连接密码。 单击界面左上角的 发送远程命令 > 连接远程连接。 在弹出的 输入远程连接密码 对话框中,输入刚修改的新密码。 单击 确定 ,开始连接 管理终端。 使用主账号或RAM用户身份再次连接 管理终端 时,在弹出的 输入远程连接密码 对话框中输入密码,单击 确定,开始连接 管理终端。 登录 ECS 实例。根据实例的操作系统,您应执行不同的操作步骤: 如果是 Linux 实例,输入用户名 root 和实例登录密码。 说明 Linux 系统一般不会显示密码输入过程。 您可以单击界面左上角的 发送远程命令 > CTRL+ALT+Fx(x 为 1 − 10),切换不同的 管理终端 连接 Linux 实例执行不同的操作。 如果出现黑屏,可能是因为 Linux 实例处于休眠状态,单击键盘上任意键即可唤醒。 如果是 Windows 实例,在 管理终端 界面的左上角单击 发送远程命令 > CTRL+ALT+DELETE,进入 Windows 实例的登录界面。输入用户名和密码即可登录。 其他操作 修改远程连接密码 如果您希望使用方便记忆的远程连接密码,或者忘记了密码,您可以按照以下步骤修改远程连接密码。 说明 如果您要连接的不是 I/O 优化实例,修改密码后,您需要在 ECS管理控制台 重启实例使新密码生效。重启操作需要停止您的实例,中断您的业务,所以请谨慎执行。 进入 管理终端 界面。 关闭弹出的 远程连接密码 对话框或 输入远程连接密码 对话框。 在界面的右上角,单击 修改远程连接密码。 在弹出的 修改远程连接密码 对话框里,输入新密码后,单击 确定,关闭对话框。 新密码生效: 如果您要连接的是 I/O 优化实例,新密码会立即生效。 如果您要连接的是非 I/O 优化实例,您必须先在控制台上 重启实例,密码才会生效。在 ECS 实例内部重启无效。 复制长命令 如果连接的是 Linux 实例,您可以使用 复制命令输入 功能输入比较长的文本、文件下载地址等。 进入 管理终端 界面。 在界面右上角,单击 复制命令输入 。 在弹出的 复制粘贴命令 对话框中,输入具体的命令后,单击 确定,即可将命令复制到 Linux 的命令行界面。 管理终端 FAQ 管理终端是独享的吗? 目前是独享的。如果一个用户已经登录,其他用户则无法再登录。 忘记了远程连接密码,怎么办? 如果忘记远程连接密码,您可以 修改远程连接密码。 为什么修改了远程连接密码还是连不上管理终端? 如果您要连接的不是 I/O 优化实例,您需要在管理控制台上 重启实例,新密码才会生效。在 ECS 实例内部重启无效。 管理终端提示 授权验证失败,怎么解决? 输入远程连接密码后,提示 授权验证失败,可能是因为您输入了错误的远程连接密码,所以,您应该: 确认您输入了正确的远程连接密码。 如果您忘了密码,可以 修改远程连接密码 之后再重试。 如果要连接非 I/O 优化实例,修改密码后,您需要先在控制台上 重启实例 使新的远程连接密码生效。 连接到管理终端后出现黑屏,怎么办? 连接到管理终端后出现黑屏,说明系统处于休眠状态。根据操作系统不同,您应执行不同的操作: 如果是 Linux 实例,您可以按任意键激活该实例,进入登录界面。 如果是 Windows 实例出现持续黑,您可以在界面左上角单击 发送远程命令 > CTRL+ALT+DELETE ,进入登录界面。 管理终端无法访问了,怎么办? 您可以使用 Chrome 浏览器进入管理终端界面,在键盘上按 F12 键显示开发者工具,然后分析 Console 中显示的信息。 我使用 IE8.0,为什么无法使用管理终端? 管理终端目前仅支持 IE10 及以上的 IE 浏览器。您可以下载最新的 IE 浏览器或 Chrome 浏览器。 建议使用 Chrome 浏览器。阿里云的控制台对 Chrome 浏览器的兼容性更好。 我用 Firefox 浏览器打开管理终端会报错 安全连接失败,怎么办? 报错原因:可能您使用的 Firefox 版本没有共用的加密算法。 建议使用 Chrome 浏览器。阿里云的控制台对 Chrome 浏览器的兼容性更好。 相关文档 在PC端,您可以使用其他方式远程连接ECS实例: 如果是Linux实例: 使用SSH密钥对连接Linux实例 使用用户名密码验证连接 Linux 实例 如果是Windows实例:使用软件连接Windows实例 在移动设备端,您可以参考 在移动设备上连接实例

2019-12-01 22:56:55 0 浏览量 回答数 0

回答

详细解答可以参考官方帮助文档 如果普通远程连接软件(比如 PuTTY、Xshell、SecureCRT 等)无法使用时,您可以使用云服务器 ECS 管理控制台的 管理终端 连接 ECS 实例,查看云服务器操作界面当时的状态。如果您拥有操作权限,可以连接到服务器进行操作配置。本文将介绍如何使用云服务器 ECS 管理控制台的 管理终端 连接 ECS 实例,并说明如何 修改远程连接密码、复制长命令,以及使用管理终端的一些常见问题及处理方法。 使用场景 管理终端 适用的场景包括但不限于: 如果您的实例引导速度慢(如启动自检),您可以通过 管理终端 查看进度。 如果您的实例内部设置错误(比如,误操作开启了防火墙),导致无法使用软件远程连接,您可以通过 管理终端 连接到实例后修改设置(比如关闭防火墙)。 如果应用消耗 CPU 或带宽比较高(例如云服务器被肉鸡,进程 CPU或带宽跑满),导致无法远程连接,您可以通过 管理终端 连接到 ECS 实例,结束异常进程等。 前提条件 您已经创建了实例。 您已经设置了实例登录密码。如果未设置,您可以 重置实例密码。 操作步骤 登录 云服务器 ECS 管理控制台。 在左侧导航栏里,单击 实例。 在 实例列表 页上,选择目标地域。 在实例列表里,找到需要连接的实例,在 操作 列,单击 远程连接。 连接 管理终端: 使用主账号第一次连接 管理终端 时,按以下步骤连接管理终端: 在弹出的 远程连接密码 对话框,复制密码。 说明 连接密码仅在第一次连接管理终端时显示一次。如果您以后需要使用这个密码连接管理终端,请记下该密码。 如果您以RAM用户身份第一次连接 管理终端,不会出现这个对话框。 单击 关闭。 在弹出的 输入远程连接密码 对话框中粘贴密码后,单击 确定,开始连接 管理终端。 如果您忘记了密码或者以RAM用户身份第一次连接 管理终端 时,按以下步骤操作: 修改远程连接密码。 单击界面左上角的 发送远程命令 > 连接远程连接。 在弹出的 输入远程连接密码 对话框中,输入刚修改的新密码。 单击 确定 ,开始连接 管理终端。 使用主账号或RAM用户身份再次连接 管理终端 时,在弹出的 输入远程连接密码 对话框中输入密码,单击 确定,开始连接 管理终端。 登录 ECS 实例。根据实例的操作系统,您应执行不同的操作步骤: 如果是 Linux 实例,输入用户名 root 和实例登录密码。 说明 Linux 系统一般不会显示密码输入过程。 您可以单击界面左上角的 发送远程命令 > CTRL+ALT+Fx(x 为 1 − 10),切换不同的 管理终端 连接 Linux 实例执行不同的操作。 如果出现黑屏,可能是因为 Linux 实例处于休眠状态,单击键盘上任意键即可唤醒。 如果是 Windows 实例,在 管理终端 界面的左上角单击 发送远程命令 > CTRL+ALT+DELETE,进入 Windows 实例的登录界面。输入用户名和密码即可登录。 其他操作 修改远程连接密码 如果您希望使用方便记忆的远程连接密码,或者忘记了密码,您可以按照以下步骤修改远程连接密码。 说明 如果您要连接的不是 I/O 优化实例,修改密码后,您需要在 ECS管理控制台 重启实例使新密码生效。重启操作需要停止您的实例,中断您的业务,所以请谨慎执行。 进入 管理终端 界面。 关闭弹出的 远程连接密码 对话框或 输入远程连接密码 对话框。 在界面的右上角,单击 修改远程连接密码。 在弹出的 修改远程连接密码 对话框里,输入新密码后,单击 确定,关闭对话框。 新密码生效: 如果您要连接的是 I/O 优化实例,新密码会立即生效。 如果您要连接的是非 I/O 优化实例,您必须先在控制台上 重启实例,密码才会生效。在 ECS 实例内部重启无效。 复制长命令 如果连接的是 Linux 实例,您可以使用 复制命令输入 功能输入比较长的文本、文件下载地址等。 进入 管理终端 界面。 在界面右上角,单击 复制命令输入 。 在弹出的 复制粘贴命令 对话框中,输入具体的命令后,单击 确定,即可将命令复制到 Linux 的命令行界面。 管理终端 FAQ 管理终端是独享的吗? 目前是独享的。如果一个用户已经登录,其他用户则无法再登录。 忘记了远程连接密码,怎么办? 如果忘记远程连接密码,您可以 修改远程连接密码。 为什么修改了远程连接密码还是连不上管理终端? 如果您要连接的不是 I/O 优化实例,您需要在管理控制台上 重启实例,新密码才会生效。在 ECS 实例内部重启无效。 管理终端提示 授权验证失败,怎么解决? 输入远程连接密码后,提示 授权验证失败,可能是因为您输入了错误的远程连接密码,所以,您应该: 确认您输入了正确的远程连接密码。 如果您忘了密码,可以 修改远程连接密码 之后再重试。 如果要连接非 I/O 优化实例,修改密码后,您需要先在控制台上 重启实例 使新的远程连接密码生效。 连接到管理终端后出现黑屏,怎么办? 连接到管理终端后出现黑屏,说明系统处于休眠状态。根据操作系统不同,您应执行不同的操作: 如果是 Linux 实例,您可以按任意键激活该实例,进入登录界面。 如果是 Windows 实例出现持续黑,您可以在界面左上角单击 发送远程命令 > CTRL+ALT+DELETE ,进入登录界面。 管理终端无法访问了,怎么办? 您可以使用 Chrome 浏览器进入管理终端界面,在键盘上按 F12 键显示开发者工具,然后分析 Console 中显示的信息。 我使用 IE8.0,为什么无法使用管理终端? 管理终端目前仅支持 IE10 及以上的 IE 浏览器。您可以下载最新的 IE 浏览器或 Chrome 浏览器。 建议使用 Chrome 浏览器。阿里云的控制台对 Chrome 浏览器的兼容性更好。 我用 Firefox 浏览器打开管理终端会报错 安全连接失败,怎么办? 报错原因:可能您使用的 Firefox 版本没有共用的加密算法。 建议使用 Chrome 浏览器。阿里云的控制台对 Chrome 浏览器的兼容性更好。 相关文档 在PC端,您可以使用其他方式远程连接ECS实例: 如果是Linux实例: 使用SSH密钥对连接Linux实例 使用用户名密码验证连接 Linux 实例 如果是Windows实例:使用软件连接Windows实例 在移动设备端,您可以参考 在移动设备上连接实例

2019-12-01 22:56:53 0 浏览量 回答数 0

回答

详细解答可以参考官方帮助文档 如果普通远程连接软件(比如 PuTTY、Xshell、SecureCRT 等)无法使用时,您可以使用云服务器 ECS 管理控制台的 管理终端 连接 ECS 实例,查看云服务器操作界面当时的状态。如果您拥有操作权限,可以连接到服务器进行操作配置。本文将介绍如何使用云服务器 ECS 管理控制台的 管理终端 连接 ECS 实例,并说明如何 修改远程连接密码、复制长命令,以及使用管理终端的一些常见问题及处理方法。 使用场景 管理终端 适用的场景包括但不限于: 如果您的实例引导速度慢(如启动自检),您可以通过 管理终端 查看进度。 如果您的实例内部设置错误(比如,误操作开启了防火墙),导致无法使用软件远程连接,您可以通过 管理终端 连接到实例后修改设置(比如关闭防火墙)。 如果应用消耗 CPU 或带宽比较高(例如云服务器被肉鸡,进程 CPU或带宽跑满),导致无法远程连接,您可以通过 管理终端 连接到 ECS 实例,结束异常进程等。 前提条件 您已经创建了实例。 您已经设置了实例登录密码。如果未设置,您可以 重置实例密码。 操作步骤 登录 云服务器 ECS 管理控制台。 在左侧导航栏里,单击 实例。 在 实例列表 页上,选择目标地域。 在实例列表里,找到需要连接的实例,在 操作 列,单击 远程连接。 连接 管理终端: 使用主账号第一次连接 管理终端 时,按以下步骤连接管理终端: 在弹出的 远程连接密码 对话框,复制密码。 说明 连接密码仅在第一次连接管理终端时显示一次。如果您以后需要使用这个密码连接管理终端,请记下该密码。 如果您以RAM用户身份第一次连接 管理终端,不会出现这个对话框。 单击 关闭。 在弹出的 输入远程连接密码 对话框中粘贴密码后,单击 确定,开始连接 管理终端。 如果您忘记了密码或者以RAM用户身份第一次连接 管理终端 时,按以下步骤操作: 修改远程连接密码。 单击界面左上角的 发送远程命令 > 连接远程连接。 在弹出的 输入远程连接密码 对话框中,输入刚修改的新密码。 单击 确定 ,开始连接 管理终端。 使用主账号或RAM用户身份再次连接 管理终端 时,在弹出的 输入远程连接密码 对话框中输入密码,单击 确定,开始连接 管理终端。 登录 ECS 实例。根据实例的操作系统,您应执行不同的操作步骤: 如果是 Linux 实例,输入用户名 root 和实例登录密码。 说明 Linux 系统一般不会显示密码输入过程。 您可以单击界面左上角的 发送远程命令 > CTRL+ALT+Fx(x 为 1 − 10),切换不同的 管理终端 连接 Linux 实例执行不同的操作。 如果出现黑屏,可能是因为 Linux 实例处于休眠状态,单击键盘上任意键即可唤醒。 如果是 Windows 实例,在 管理终端 界面的左上角单击 发送远程命令 > CTRL+ALT+DELETE,进入 Windows 实例的登录界面。输入用户名和密码即可登录。 其他操作 修改远程连接密码 如果您希望使用方便记忆的远程连接密码,或者忘记了密码,您可以按照以下步骤修改远程连接密码。 说明 如果您要连接的不是 I/O 优化实例,修改密码后,您需要在 ECS管理控制台 重启实例使新密码生效。重启操作需要停止您的实例,中断您的业务,所以请谨慎执行。 进入 管理终端 界面。 关闭弹出的 远程连接密码 对话框或 输入远程连接密码 对话框。 在界面的右上角,单击 修改远程连接密码。 在弹出的 修改远程连接密码 对话框里,输入新密码后,单击 确定,关闭对话框。 新密码生效: 如果您要连接的是 I/O 优化实例,新密码会立即生效。 如果您要连接的是非 I/O 优化实例,您必须先在控制台上 重启实例,密码才会生效。在 ECS 实例内部重启无效。 复制长命令 如果连接的是 Linux 实例,您可以使用 复制命令输入 功能输入比较长的文本、文件下载地址等。 进入 管理终端 界面。 在界面右上角,单击 复制命令输入 。 在弹出的 复制粘贴命令 对话框中,输入具体的命令后,单击 确定,即可将命令复制到 Linux 的命令行界面。 管理终端 FAQ 管理终端是独享的吗? 目前是独享的。如果一个用户已经登录,其他用户则无法再登录。 忘记了远程连接密码,怎么办? 如果忘记远程连接密码,您可以 修改远程连接密码。 为什么修改了远程连接密码还是连不上管理终端? 如果您要连接的不是 I/O 优化实例,您需要在管理控制台上 重启实例,新密码才会生效。在 ECS 实例内部重启无效。 管理终端提示 授权验证失败,怎么解决? 输入远程连接密码后,提示 授权验证失败,可能是因为您输入了错误的远程连接密码,所以,您应该: 确认您输入了正确的远程连接密码。 如果您忘了密码,可以 修改远程连接密码 之后再重试。 如果要连接非 I/O 优化实例,修改密码后,您需要先在控制台上 重启实例 使新的远程连接密码生效。 连接到管理终端后出现黑屏,怎么办? 连接到管理终端后出现黑屏,说明系统处于休眠状态。根据操作系统不同,您应执行不同的操作: 如果是 Linux 实例,您可以按任意键激活该实例,进入登录界面。 如果是 Windows 实例出现持续黑,您可以在界面左上角单击 发送远程命令 > CTRL+ALT+DELETE ,进入登录界面。 管理终端无法访问了,怎么办? 您可以使用 Chrome 浏览器进入管理终端界面,在键盘上按 F12 键显示开发者工具,然后分析 Console 中显示的信息。 我使用 IE8.0,为什么无法使用管理终端? 管理终端目前仅支持 IE10 及以上的 IE 浏览器。您可以下载最新的 IE 浏览器或 Chrome 浏览器。 建议使用 Chrome 浏览器。阿里云的控制台对 Chrome 浏览器的兼容性更好。 我用 Firefox 浏览器打开管理终端会报错 安全连接失败,怎么办? 报错原因:可能您使用的 Firefox 版本没有共用的加密算法。 建议使用 Chrome 浏览器。阿里云的控制台对 Chrome 浏览器的兼容性更好。 相关文档 在PC端,您可以使用其他方式远程连接ECS实例: 如果是Linux实例: 使用SSH密钥对连接Linux实例 使用用户名密码验证连接 Linux 实例 如果是Windows实例:使用软件连接Windows实例 在移动设备端,您可以参考 在移动设备上连接实例

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