首页 文章 精选 留言 我的

精选列表

搜索[导航菜单],共10001篇文章
优秀的个人博客,低调大师

三级菜单

db = { "riskcontrol" :{ "riskinner": [ "pay-inner-api-A1", "user-inner-api-A1" ], "riskweb": [ "itfin-job-A1", "pay-web-api-A1", "user-web-manager-A1" ] }, "shop": { "shopinner": [ "home-inner-api-A1", "product-inner-api-A1", ], "shopweb": [ "shop-job-A1", "home-web-api-A1" ] } } path = [] while True: temp = db for item in path: temp = temp[item] print('当前节点的所有子节点:',list(temp.keys()),'\n') choice = input('1: 添加节点; 2: 查看节点(Q退出/返回上一级B) \n>>>') if choice == '1': k = input('请输入要添加的子节点名称: ') if k in temp: print('节点已经存在') else: temp[k] = {} elif choice == '2': k = input('请输入要查看的子节点: ') if k in temp: path.append(k) else: print('子节点名称错误') elif choice.lower() == 'b': if path: path.pop() elif choice.lower() == 'q': break else: print('输入不合法')

优秀的个人博客,低调大师

微服务学习导航

希望给你3-5分钟的碎片化学习,可能是坐地铁、等公交,积少成多,水滴石穿,码字辛苦,如果你吃了蛋觉得味道不错,希望点个赞,谢谢关注。 如何学习 学习是一个人的核心竞争力,终生持续学习是别人离不开你的秘诀,如果能分享和教会别人,你的收获可能是双边甚至更多。就技术领域的学习,我还是一个在海边玩耍的小孩,时不时因为捡到一块漂亮的石头就开心不已。 学习金字塔 学习金字塔是个被熟知的好方法,如下图所示。 该方法至少内置了两层含义:1.学习是循序渐进的过程,不要希望走捷径,刷聪明才智。2.学习是从理论到实践再到理论的反复迭代的过程,不要觉得一个闭环就能搞的定。如果人家恭维觉得你是某一方面的专家,你要有所保留,不要掉进赞美的坑里。 学习好比小孩玩乐高游戏,首先要明确要拼什么,是航空母舰还是直升机,其次要尽可能的占有更多有价值的学习资源,也就是要有足够的的积木,接下来就是看说明书,按步骤,分阶段,按级别的动手过程。 所以回到我们的主题,我们要学习的是微服务这个总目标,接下来搜集尽可能多的有价值的资源,最后查一查我们的说明书或者叫地图,了解学习图谱和路径了(百度脑图)。下面接着要规划的就是我的脑图和学习要点,如果您有更好的方式,请多指教。 学习路径 学习路径属于学习的细节部分,根据以上的路径,我们需要整体了解微服务整片森林的构成,也是就后面要展示的思维导图,随后导图的每个构件需要逐个拆分梳理,比如微服务包含的六大组建,最后我们开始行动,各个击破。在分阶段学习的过程中,我们至少要循序渐进,由简入深,避免一开始拔高门槛,导致的心理受挫。最后一环,通过讨论,分享进行知识的盘点和复习、固话。 提到学习方法,另外补充一个左耳朵耗子提出ARTS的学习小技巧,即每周至少做一个 leetcode 的算法题、阅读并点评至少一篇英文技术文章、学习至少一个技术技巧、分享一篇有观点和思考的技术文章。(也就是 Algorithm、Review、Tip、Share 简称 ARTS)需要坚持至少一年。我觉得这种方式也很不错,不过那是学习的细节和学习毅力的问题了,但凡有这种好习惯的人,值得敬仰,我知道的有阮一峰前辈有这种持续的学习毅力。 学习什么 微服务已经不是什么新技术,只是闻道有先后,大厂和趋势在前行,你不得不迈开脚步(可能你反对,但是趋势挡不住),当微服务扑面而来的时候,你是否还在观望或者犹豫,当你恍然大悟的时候,你是否又迷茫不知所措?是的,我们需要一份微服务的脑图,也许这份图谱不一定是标准答案,但是在你做参考和评估的时候,希望能对你有所帮助。如下图所示: 由于内容较多,查看全貌请移步百度脑图。 为了更好地理解微服务和设计微服务架构,列出几个比较经典的设计图辅助理解: 图一 图二:(胡忠想 微博技术专家) 不知道你对以上的图有何感想,欢迎加入我们的QQ群进行深入讨论:105365283 六大组件 如脑图所示,微服务总体的内容包含有六大组件:服务描述,注册中心,服务架构,服务监控,服务跟踪和服务治理。这六大组件互相依赖,相辅相成,纵深挖掘,又可以牵扯出DevOps和容器化技术等周边信息,这些武器库代表的是技术的未来,不管是你是在小企业还是大厂,还是大厂里的小部门,不知道你是否有这种体验? (微服务生态) 服务描述: 类似服务的说明文档,简单但不可或缺。比如,服务调用首先要解决的问题就是服务如何对外描述。比如,你对外提供了一个服务,那么这个服务的服务名叫什么?调用这个服务需要提供哪些信息?调用这个服务返回的结果是什么格式的?该如何解析?这些就是服务描述要解决的问题。 注册中心: 有了服务的接口描述,下一步要解决的问题就是服务的发布和订阅,就是说你提供了一个服务(Provider),如何让外部(Consumer)想调用你的服务的人知道。这个时候就需要一个类似注册中心(Registry)的角色,服务提供者将自己提供的服务以及地址登记到注册中心,服务消费者则从注册中心查询所需要调用的服务的地址,然后发起请求。如下图所示: 服务框架: 通过注册中心,服务消费者就可以获取到服务提供者的地址,有了地址后就可以发起调用。但在发起调用之前你还需要解决以下几个问题。服务通信采用什么协议?是RESTful API还是gRPC?数据传输采用什么方式数据压缩采用什么格式?这些活通常集成到了我们的服务框架里面,市面上有很多这样的开源框架,相对都比较成熟,接下来考验你的是快速上手的能力。 服务监控: 一旦服务消费者与服务提供者之间能够正常发起服务调用,你就需要对调用情况进行监控,以了解服务是否正常。通常来讲,服务监控主要包括三个流程,指标收集,数据处理,数据展示。监控是为了发现问题和异常,如果要进一步跟踪和定位问题,则需要进一步了解服务追踪。 服务追踪: 除了需要对服务调用情况进行监控之外,你还需要记录服务调用经过的每一层链路,以便进行问题追踪和故障定位,最后达到接近问题的目的。服务监控和追踪可以合并起来,但是要明确各自的职责是不一样的。 服务治理: 服务监控能够发现问题,服务追踪能够定位问题所在,而解决问题就得靠服务治理了。服务治理就是通过一系列的手段来保证在各种意外情况下,服务调用仍然能够正常进行。就目前开源的服务框架,大部分都不包括服务治理的内容,所以有可能这块是需要你和你的团队进行定制化开发,就看你做到什么程度了,就好比你有数据库但是你没有ER图描述,并不影响你用微服务,当然如果有就是锦上添花的东西了。 以上六大组件可以粗暴的定义为微服务的二级目录,他们共同组成了微服务架构,在生产环境下缺一不可。 相信通过以上的整理,你对微服务的学习方法和学习路径已经有了一个大概的思路了,接下来就是迈开脚步,持续输出的能力了,你准备好了吗? 参考文献: 微服务架构理解 微服务架构设计 Martinfowler博客Microservices Microservice Architecture Wikipedia 希望以上分享对你有帮助,我是IT人张飞洪,入行10年有余,人不堪其忧,吾不改其乐,谢谢您关注。

优秀的个人博客,低调大师

web安全实践系列导航

作者:玄魂 安全技术区http://space.cnblogs.com/group/group_detail.aspx?gid=100566 web 安全实践(1)基于http的架构分析常用工具 Web安全实践(2)基于http的web架构剖析 web安全实践(3)再谈基于http的服务器架构剖析 Web安全实践(4)c#简单http编程示例 Web安全实践(5)web应用剖析之全局任务和自动化工具 Web安全实践(6)web应用剖析之信息提炼 Web安全实践(7)web服务器简介及常用攻击软件 Web安全实践(8)攻击iis6.0 Web安全实践(9)攻击apache Web安全实践(10)攻击weblogic Web安全实践(11)用户名枚举 Web安全实践(12)密码探测 Web安全实践(13)嗅探,arp欺骗,会话劫持与重放攻击(上) Web安全实践(14)嗅探,arp欺骗,会话劫持与重放攻击(下) Web安全实践(15)CSRF(跨站请求伪造)-从校内的插入图片说起 本文转自悬魂博客园博客,原文链接:http://www.cnblogs.com/xuanhun/archive/2008/10/25/1319523.html,如需转载请自行联系原作者

资源下载

更多资源
Mario

Mario

马里奥是站在游戏界顶峰的超人气多面角色。马里奥靠吃蘑菇成长,特征是大鼻子、头戴帽子、身穿背带裤,还留着胡子。与他的双胞胎兄弟路易基一起,长年担任任天堂的招牌角色。

Spring

Spring

Spring框架(Spring Framework)是由Rod Johnson于2002年提出的开源Java企业级应用框架,旨在通过使用JavaBean替代传统EJB实现方式降低企业级编程开发的复杂性。该框架基于简单性、可测试性和松耦合性设计理念,提供核心容器、应用上下文、数据访问集成等模块,支持整合Hibernate、Struts等第三方框架,其适用范围不仅限于服务器端开发,绝大多数Java应用均可从中受益。

Sublime Text

Sublime Text

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。

WebStorm

WebStorm

WebStorm 是jetbrains公司旗下一款JavaScript 开发工具。目前已经被广大中国JS开发者誉为“Web前端开发神器”、“最强大的HTML5编辑器”、“最智能的JavaScript IDE”等。与IntelliJ IDEA同源,继承了IntelliJ IDEA强大的JS部分的功能。

用户登录
用户注册