首页 文章 精选 留言 我的

精选列表

搜索[关系代数],共10001篇文章
优秀的个人博客,低调大师

如何基于 APISIX 迭代数字智联平台

分享嘉宾:沈巍,浙大网新研发总监。 网新电气成立于 2011 年,属于浙大网新旗下,为绿色智慧交通系统解决方案的提供商。业务范围包括铁路、隧道、城市智能交通、航空、高速公路等行业。整个高铁信息化的业务分布占到了全国市场的 20% 以上,比如参与建设了杭黄铁路、合肥南站等客服信息化系统;杭州文一路隧道、杭州紫之隧道等监控系统;首都机场物联网平台、数据交换平台等系统。 在城市智能交通的覆盖范围下,很多场景对于流量处理和系统稳定性都要求极高。为了应对这种城市级别的数字智能要求,对于基础架构的组件选择也是重中之重。本文将从数字化平台应用的角度,带来与 API 网关 Apache APISIX 的相遇相熟和应用,希望对仍在网关选型过程中的企业或用户有所帮助。 数字大桥智联平台应用场景 在数字领域的业务实践中,我们打造了网新数字大桥智联平台。数字大桥智联平台是一个非常庞大的交通领域管控系统,涵盖了整个交通领域比如结构化安全、病害检测、日常维养巡检、数字孪生与建模、交通应急指挥以及各类评估算法等等。 下图为网新数字大桥智联平原本的架构模式,整个系统主要分为四个部分。 最底层属于采集层,主要负责采集各类数据。目前采集数据的种类比较多,比如温度传感器会采集到路面的一些温度;结构层面的力学传感器会检测震动数据;GPS 传感器则会采集位移情况;无人机监测路面状态等等,所以整体监测类型的数据量也是非常大的。 在此之上,在中间层我们还构建了一个数据中枢,它可以把所有的业务数据都汇总到一起,然后再提供业务的 API 给各个业务系统使用。这个项目最大的一个特点,就是参与的公司很多(大概 30+),这些公司都会参与进来进行各自的业务系统搭建。 在业务层中,需要在同一套用户体系下访问业务系统,主要是给业务用户使用。在实际实践过程中,不同业务系统之间往往存在交叉访问。随着业务系统的增多,整个服务对外提供的 IP 和端口也会增多,一些问题开始应运而生。 痛点与现状 随着实践的增多,我们发现上述架构开始呈现如下问题: 不同系统之间 API 鉴权各异,大量重复开发; 不同系统对 API 的安全管理程度不同; 缺少统一的 API 路由; 缺少统一 API 监控等。 基于上述需求痛点,引申出了一个结论方向:即我们需要构建一个 API 网关。API 网关对于我们现阶段的系统而言,是一个刚需的组件。在这个过程中,我们也开始考虑如果引入 API 网关后会有什么优点。 比如之前整个业务系统会暴露大量的服务端口,因为系统很多都需要暴露到外部去使用。引入 API 网关后,或许整个系统可以只暴露一个 443 端口,其他全部在内网访问即可,这样整个系统的安全性就更高。 其次 API 鉴权如果都放到 API 网关来做的话,那整个功能的实现就非常简单了,同时还降低了各个业务系统之间互相调用的开发工作量,避免重复开发。同理对于 API 的路由和监控也一样,都可以让整体业务更好地管理。 最后就是内网如果走 HTTP 的话,性能其实会更好。因为之前架构中,各个业务系统之间的互相调用,为了保证安全性所以选择了 HTTPS 模式,在一定程度上影响了整体性能。 所以总体来看,加入 API 网关这个组件,对于我们整体业务的提升是比较明显的。 网关层为何选择 APISIX 自研初尝试 在选型 API 网关之前,其实我们自己也尝试过一些操作。因为整个团队对 Java 技术栈和 Spring 框架都比较熟,所以就选择基于 Zuul 开发了一个 API 网关使用。当时这套网关对于 HTTP 场景也基本够用。随着后续继续使用,就有新的需求开始产生。比如: 需要对 WebSocket 的鉴权进行支持。 很多实时类的告警信息需要通过 WebSocket 进行推送,如果需要支持这类信息,还需另行开发;同时 Zuul 对 WebSocket 的支持性不是很好,想要对 WebSocket 进行鉴权更是难上加难。 需要路由支持 HLS 和 FLV 等流媒体协议。 由于本身业务实践场景中,对于视频处理的需求比较大,尤其是面向 ToB 和 ToG 的业务场景,视频监控是一个很重要的系统。因此如果视频处理走网关的话,就需要支持 HLS 和 FLV 流媒体协议(两种都基于 HTTP),同时视频对于延迟性和流量要求都是很高的,对网关压力极大。 BIM 模型展示,基于 3D Tiles 协议需要在短时间下载数 GB 的数据。 在前文提到的数字孪生场景下,BIM 建模非常火。因此整个模型体量是非常大的,大概几百个 G 。尽管 3D Tiles 协议支持动态加载能力,但是在短时间内需要完成的流量依旧很庞大,对于网关来说压力就更大了。 路由需要动态加载,即时生效。 在动态加载层面,Zuul 没法满足我们即时生效的需求。即便是我们进行二次开发,也会加大额外的工作量,同时还并不能保证可以完美地实现这种效果。 调研选型主流网关 在自研道路上跌跌撞撞之后,我们开始对市场中主流的网关产品进行调研。当时我们调研了以下几个网关,调研完之后发现每个产品各自的优缺点都比较明显,但是都不能很好地契合我们的场景。比如 NGINX 无法做动态路由,Java 技术栈相关的性能又跟不太上等。 调研之后,我们并没有找到适合自己的产品,也一直都在观望和困惑中。但后来在选型过程中,无意间看到了由开源中国举办的 「2021 年年度中国开源项目」评选活动。因为我觉得这里面肯定有很多优秀的项目,于是抱着学习的心态就一个个点进去了解了一下,然后就看到了 API 网关产品 —— Apache APISIX。 后来跟随 APISIX 的各种介绍,包括 GitHub 上的提问、社区官网上的技术文档以及 B 站上的一些用户案例和技术实践分享等等,我发现整个社区都非常有活力。比如在 GitHub 上有接近 3600 个 issue 而且已经解决了 3200 个左右,解决率高达 89%,这个数量占比还是非常可观的;同时有些社区反馈渠道也允许中文提问,这对于中国开发者而言非常友好。 同时 Apache APISIX 项目在全网有较多的参考资料。APISIX 社区在 B 站和 Youtube 上都有非常多的视频分享,包括用户案例和一些技术 tutorials(教程)。我曾经花了两天时间把 APISIX的 B 站视频全都看了一遍,这个过程中我发现有很多企业类似的案例都跟我们的需求场景很类似,包括一些实践过程中踩的坑。这些对于我们而言,很多是可以直接拿来借鉴的真实经验,对于后续的架构更新有非常高的价值参考。 这些细节,都让我们对于产品的后续使用有了十足的安全感,最终我们选择了将 Apache APISIX 作为 API 网关进行后续架构和业务的迭代。 应用 APISIX 的业务实践 让 K8s 中部署更可靠 目前我们是将 APISIX 部署在 K8s 上使用,整个用户侧的业务系统都是先经过 API 网关,然后再由 API 网关在路由上分发到各个业务服务,中间都是通过内部域名进行传递。 在高性能的体现上,我们采取了 K8s 多实例的方案。比如说性能要求好,就可以给它配 10 个实例;性能要求差一些,就配 5 个实例。 同时域名也是我们很在意的点。因为按照前文所提到的预想规划,我们只希望暴露一个 443 的端口出去,其他都通过 K8s 内部的域名进行整体服务的运转。在刚开始使用 APISIX 时我还有些担心,万一它只支持 IP 地址跟端口,那就很麻烦了。 后来经过测试发现效果也非常好。如下图左侧为 APISIX Dashboard,右侧是服务域名(K8s 服务域名)。这里就可以直接配置 K8s 的域名+一个端口,这样就可以直接完成域名的转发。这对整个系统的可靠性跟安全性都有了非常强力的功能支持。 自定义服务轻松对接鉴权 单点登录与鉴权也是我们业务系统中非常重要的一部分。因为我们有大量的业务和用户需要进行管理,所以这一块肯定是由各自业务系统进行的,因此我们也自研了单点登录服务。 由于自研服务系统,所以相关 token 并不通用,其中就会携带一些业务特定的自定义信息。因此我们也害怕自己的 token 无法被 APISIX 鉴权相关功能所识别,因为 APISIX 提供的 token 是我们内部无法使用的。 但在后续的实践过程中我们发现,这种想法是多虑的。在实际生产过程中,只需把我们业务的 token 生产加密算法与 APISIX 的加密配置保持同步,就可以利用 APISIX 实现完整功能的鉴权。如上图所示,自研服务产生的 token 通过 APISIX 的 jwt-auth 插件完成了一整个服务鉴权。 针对业务的 etcd 处理 作为 APISIX 架构中的重要组件,etcd 对于我们的研发团队来说确实是一个挑战。由于本身对 etcd 并不熟悉,所以我们在 K8s 环境中部署 etcd 集群折腾了很久。虽然在学习成本上有些折腾,但也意外发现了一个惊喜。 我们发现,APISIX 在 etcd 宕机后,非重启情况下还可以正常工作。等 etcd 恢复后, APISIX 会自动重连。基于此,我们提出了一个更贴合实际业务场景的方案。 因此我们放弃了配置 etcd 集群,而是只配置了一个 etcd 用来支撑整个 APISIX。只需要把 etcd 的数据备份好,重启完 APISIX 也能正常连接运作。实际运行起来的效果也是很不错的,至少对于我们的业务场景是够用的。同时因为 etcd 只部署了一个,所以后续的运维工作量也减少了很多。 开箱即用的 API 监控 对于我们的业务来说,是属于强依赖于系统集成的项目,因此业务系统之间互相调用 API 的环节就非常多。如果某些系统之间的调用 API 出现了问题,就会导致不同业务部门互相扯皮。为了应对这种环节,就需要有相应的监控系统进行排查。 APISIX 官方其实已经提供了一套完整的监控解决方案「APISIX+Prometheus+Grafana」。利用自带的 prometheus 插件,可以非常方便地与 Prometheus 进行集成,并实现请求状态码、实时带宽、etcd 可用性、TCP 连接指标和节点等信息的监控和管理。 依靠 APISIX 这套监控方案可以很容易地定位出哪部分调用 API 出现了问题,进行快速定位,避免了各业务系统之间集成对接时所产生的一些问题。 总结与展望 总体来看,我们接触 APISIX 的时间并不算长。2021 年 10 月份刚知道这个产品,在测试和需求检验等角度折腾了两三个月后,开始尝试部署到生产环境中,现在也是随着官方版本的更新逐渐迭代。 从我个人角度和业务运行的体验来看,APISIX 作为网关已经是一个很成熟的产品了。在使用的这段时间里,也逐渐从对这个产品的各种担心到真正上手后的惊喜回馈: 一开始曾担心配置上游时,无法使用 K8s 的服务域名;使用过发现,原来完美支持服务域名访问。 基于 APISIX 实现了业务高可用方案,依赖 K8s 云平台实现多实例+自动伸缩+健康监测+预警告警等功能。 对于系统集成项目,APISIX 完美解决了 API 的管理、 鉴权、路由问题。 其配置的热更新特性,极大避免了“因为更新导致服务无法正常访问”。 作为一个开箱即用的网关产品,让开发人员可以更专注于业务代码。 当然,在实践过程中,我们也基于这些操作提出了一些业务层面对于 APISIX 的功能需求,比如: 能否支持除 etcd 外的其他数据持久化方式,比如 MySQL、PostgreSQL 等。可让我们在熟悉的数据存储领域能够更好地应用与排查问题; APISIX Dashboard 能否支持一键数据备份与还原。 整体来看,在使用 APISIX 的过程中,对于开发人员的学习成本可能高了一些,但是产品服务于业务中所体现出来的整体效果是完全惊喜的。后续我们也计划在更多系列的业务产品中引入 APISIX,作为网关组件让我们的业务产品可以发挥更稳定更高效的价值。 本文由博客一文多发平台 OpenWrite 发布!

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

现代数据中心平台

如今,长期在数据中心部署的服务器,操作系统,核心软件和网络正在向外迁移到公共云端。 云计算不是一种单一的产品类型,而是一系列旨在满足组织各种IT需求的服务。其中,通过云计算提供的一项这样的服务是基础设施即服务(IaaS),经由互联网向组织提供虚拟化的计算资源。IaaS与软件即服务(SaaS)和平台即服务(PaaS)一样,都是云服务的主要类型之一。 在IaaS模式中,第三方服务提供商以高度自动化的交付模式为客户提供硬件设备,操作系统和其他软件,服务器,存储系统和各种其他IT组件。在某些情况下,它们还可以处理诸如持续的系统维护,数据备份和业务连续性等任务。 使用IaaS的组织可以自行提供基础架构服务,并在每次使用的基础上为其支付费用。费用通常按小时,周或月支付,具体取决于服务合同。在某些情况下,供应商会根据他们在一段时间内使用的虚拟机(VM)容量来为客户端提供基础架构服务。 与其他云计算服务类似,IaaS可以在虚拟化环境中访问通常是互联网的公共链接的IT资源。但是通过IaaS,组织可以访问虚拟化组件,以便可以在IaaS上创建自己的IT平台,而不是在自己的数据中心中。 向客户提供的IaaS服务池由多个服务器和网络提供,这些服务器和网络通常分布在云计算提供商拥有和维护的多个数据中心。 IaaS资源可以是单租户或多租户,并且它们在服务提供商处托管。 “多租户”意味着多个客户端共享这些资源,即使他们的系统是分开的。这是提供IaaS的最常见方法,因为它既高效又可扩展,从而允许云计算的成本一般较低。 相比之下,单一租户系统存在于为那些需要与其他人严格隔离的客户服务,但成本较高。单租户系统更像是传统的托管服务,其中第三方提供商基本上在其数据中心租用专用空间,但真正的单一租户IaaS还提供了云特定的功能,例如可扩展性和访问广泛的平台技术,通常不能提供托管服务。 组织可以使用云计算技术在自己的数据中心中创建自己的内部IaaS,但这不是真正的IaaS。这是一个传统的数据中心,它使用现代的云计算技术。云计算提供商提供更大的可扩展性,更多的技术选择,按需供应,通常具有更好的安全性,这是因为它创建了IaaS平台来支持数百或数千个客户。 为什么企业采用IaaS IaaS的主要业务优势就像在其他云产品中一样,IaaS使得依靠内部部署数据中心的传统IT基础设施提高了灵活性。 IaaS平台可以访问高度可扩展的IT资源,可以根据容量变化的需求进行调整。这使得该模式非常适合只是暂时具有高工作负荷的公司,例如许多零售商在假期和购物季节期间面临这样的问题。它也非常适合中小企业,希望看到稳定的增长需求。 如今的公司正在寻求更有弹性,以便更好地与可以快速更改的网络商家竞争。提高业务灵活性和可扩展性是IaaS的主要业务推动力。 节省成本也是如此。通过将IT基础架构转移到云端,组织可以节省资金和运营支出。只有在需要时才为计算能力支付费用,可以减少未充分利用的资源的成本。由于减少了对内部数据中心硬件的依赖,因此还可以降低IT硬件维护成本。云计算监控工具和云计算智能的成本模式可以帮助避免IaaS费用的激增。 但是,组织必须小心监控自己的使用情况,并确保应用程序和其他系统有效地使用云资源。因为在IaaS的计量中,组织为所浪费资源的费用与实际支付的费用一样多。 IaaS的另一个好处是在地点上的灵活性。组织可以从几乎任何地方通过互联网访问IaaS产品。 还有可用性的优势。由于云计算提供商依赖于多个设施,所以没有单点故障。他们还根据客户所在的位置分配其设施,以减少延迟。 IaaS的典型应用 组织可以将IaaS用于各种工作负载。但根据调研机构Gartner公司2017年6月的报告,这些服务通常需要四大类: 数字业务:几乎所有受数字中断影响的企业,其数字业务需要占据IaaS中大部分工作负载。数字业务用例包括数字营销,电子商务,客户资源管理,软件即服务,数据服务和物联网(IoT)应用。 敏捷项目:许多组织已经启动了以敏捷方式执行的IT项目。通常在IaaS上执行快速应用程序开发,原型设计,实验和其他项目需要敏捷性,灵活性,以及满足紧急基础架构需求的能力。 数据中心的替代:在许多组织中,IaaS正在逐渐替代或补充传统的本地数据中心基础架构。在这些情况下,IaaS通常与组织的内部虚拟化环境相似,组织通常从开发环境或不太关键的生产应用程序开始,然后逐渐扩展其使用IaaS来承载关键应用程序,以获得更多的经验和信任。 批量计算:这是IaaS最常见的需求,Gartner公司表示,在这些情况下,IaaS可以替代传统的高性能计算或网格计算。可能的应用包括渲染,视频编码,遗传测序,建模和仿真,数值分析和数据分析。 对IaaS技术的调查 IaaS产品的领先供应商包括亚马逊网络服务(AWS),微软,谷歌,IBM,阿里云,甲骨文,Virtustream,CenturyLink,Rackspace和Joyent。 每个IaaS产品的主要技术组件包括计算资源,存储和网络。 有些还提供自助服务接口,包括基于Web的用户界面和API,作为服务的管理工具以及云软件基础架构服务。 根据Gartner公司的说法,IaaS产品的主要特点包括: 公共和私有云IaaS。公共和私有云的单一架构和功能集和跨云管理可以根据组织需要在不同的服务模式移动工作负载。 高安全标准。虽然所有这些提供的产品都具有很高的安全标准,但它们为客户提供的控制范围却有很大差异。所有这些都提供满足共同的监管合规要求的服务,并且通常对其数据中心进行SSAE 16审核。有些还可能对其IaaS产品进行第三方安全评估。 高可用性。每月计算可用性服务级别协议(SLA)达到99.95%及更高,这通常高于托管主机的可用性SLA。许多提供商具有额外的SLA,涵盖网络可用性和性能,以及客户服务响应能力。 每小时定价。所有提供商都提供每小时计量的虚拟机,有些提供更短的计量增量,对于短期批量作业来说,这可以更具成本效益,Gartner公司表示,大多数提供商以每个虚拟机为基础收费,有些提供了共享资源池定价模型,或者对于服务价格更加灵活。 IaaS的风险和挑战 与任何其他类型的云服务一样,IaaS带来了组织需要解决的几个风险和挑战。 其中最关键的问题是网络安全威胁。保护云端中的数据很大程度上取决于服务提供商拥有的云基础架构的安全性。例如,如果有一个受损的管理程序,虚拟机可能会被暴露。 服务提供商的员工可以直接访问云计算基础架构(包括硬件,网络和虚拟机管理程序)时也带来安全隐患。 其中一些安全隐私风险可能会导致遵守政府法规的困难。对于诸如医疗保健和金融服务等高度管制的行业,这一点尤其如此。 另一个潜在的挑战是管理IT环境的复杂性,这严重依赖外部实体提供的云计算服务。由于依赖服务提供商提供重要的IT功能,因此自然会失去控制权,而且由于IaaS提供商拥有和维护基础设施,管理和监控可能对企业来说更为困难。 最后,服务提供商本身也面临风险。正如Gartner公司在其报告中指出的那样,市场上的许多提供商正在重新评估其IaaS业务,因为IaaS市场继续在AWS,Microsoft和Google之间进行整合,因此,一些供应商可以在其IaaS战略方向做出重大的改变。这包括使用新平台取代目前的产品,甚至完全脱离IaaS业务。 尽管存在这些问题和其他挑战,IaaS的应用显然更加广泛,为组织创造更多的灵活和高效的IT环境。 本文作者:佚名 来源:51CTO

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

“几+N”:云计算时代数据中心布局

在2014年11月,国务院常务会议上确定促进云计算创新发展措施,培育壮大新业态和新产业,确定要积极支持云计算与物联网、移动互联网等融合发展,催生基于云计算的在线研发设计、教育医疗、智能制造等新业态。大力促进云计算也是基于解决投资分散、重复建设、产能过剩、资源整合不均和建设缺乏协同等诸多问题的方案。从应用模式来看,混合云将是未来云计算发展的趋势,这决定了云计算的底层基础设施数据中心在全国范围内将按照“几+N”形式布局,并且要求其“灵活可扩展”。 “混合云”是未来云计算产业的主要应用模式 在2013年的斯诺登事件曝光加剧了用户对于云安全的担忧,虽然公有云服务提供商依然会通过各种措施完善公有云的安全,并会继续加强用户隔离、数据备份方面的投入,但用户出于对数据隐私性和可用性的考虑,必然会将核心数据及应用掌握在企业自己手中,通过企业私有云来支撑。“混合云”将是未来云计算发展主要应用模式,从中国市场需求来看,尤其是对国内的大型企业来说,混合云是最务实的方案,既充分利用原有设备的投资,又可以解决现有系统无法支撑突发业务流量和数据隐私方面的问题。从厂商动作来看,各个IT巨头迈向云计算的方向无一例外的是“混合云”模式,IBM、HP、华为、微软、EMC等纷纷推出混合云策略及解决方案。 数据中心将按照“几+N”形式布局 与云计算应用的模式相对应,云应用中的“公有云”部分将主要由几个大型甚至超大型数据中心承担,由云服务商提供运营服务,而体现企业核心竞争力的数据及业务将在企业“私有云”之上运行,由企业自己运营。数据中心布局最终将呈现“几+N”的形式。目前,中国云计算数据中心的布局还存在着市场的非理性特征。主要原因是目前尚处于国家引导发展的初期,尤其是处于政府政策性扶持阶段,受优惠政策的支撑,云计算数据中心密集地集中在需求大、应用多的环渤海、长三角、珠三角三大经济区。市场主体并未过多地顾及能源支撑的可持续性,政策性支持弱化了市场要素的作用。“几个”大型云计算数据中心未来布局将会在土地、能源、成本等的约束下,向资源富集,空气、水、环境等较好,低温冷能丰富的高纬度地区集聚转移。“N个”企业私有数据中心将在企业附近就近布局。 高密度模块化数据中心是重要趋势 “混合云”中的公有云部分的业务是需要大型化数据中心承担,数据中心的大型化已成必然趋势,同时在运营和管理方面对运营商提出了更高的要求,在这种背景下,数据中心进入了一个模块化、智能化的时代。从数据中心具体建设步骤来看,在数据中心规划初期是无法有效预计未来的服务量级的,如果不顾业务量大小,盲目建设大规模数据中心会为数据中心建设企业带来较大的前期成本压力和资源浪费,而后期的扩建扩容存在着周期长、管理复杂等诸多限制。现在模块化数据中心能够较好解决这一问题,其特点是数据中心建设工程产品化,能够通过工厂制造实现现场短周期、快速部署,满足数据中心“灵活可扩展”需求。另一方面数据中心发展到现在节能、环保已经是其技术革命的重点环节,而高功率密度设备的大量应用使得数据中心的制冷问题越来越突出,数据中心建设需全生命周期地综合考虑如何去提高可靠性和降低能耗。 数据中心产品不断向融合方向发展 与数据中心模块化的趋势相适应,数据中心的产品也在不断向融合化的方向发展,包括数据中心设备中的服务器、机房空调和UPS等环境设备、机房布线等。越来越多的厂商提供数据中心建设的综合解决方案,甚至于有的厂商尝试推出集成UPS的服务器设备。因此单一的产品提供商已经无法在这一轮市场竞争中立足,市场将更加青睐集成能力更强的厂商。 本文作者:邢婷 来源:51CTO

资源下载

更多资源
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等操作系统。

用户登录
用户注册