首页 文章 精选 留言 我的

精选列表

搜索[单体架构],共10008篇文章
优秀的个人博客,低调大师

openfalcon架构详解

一:绘图组件: 1.falcon-agent 数据采集组件 agent内置了一个http接口,会自动采集预先定义的各种采集项,每隔60秒,push到transfer。 2.transfer agent与transfer建立长连接,将数据汇报给tarnsfer transfer默认监听在:8433端口上,agent会通过jsonrpc的方式来push数据上来 transfer将数据发送给judge和graph 3.graph graph组件是存储绘图数据、历史数据的组件。transfer会把接收到的数据,转发给graph。 监听端口为6071,校验方法如下,返回ok表示服务正常。 #url-s"http://127.0.0.1:6071/health" 4.query 绘图数据的查询接口,因为graph是分片存储的,如果要传输给dashboard,就需要query组件收集用户的数据进行聚合再返回给用户。 5.dashboard dashboard是面向用户的查询界面,在这里,用户可以看到push到graph中的所有数据,并查看其趋势图。 二:告警组件 1.judge 告警判断 2.alarm alarm模块是处理报警事件的,judge产生的报警事件写入redis,alarm从redis读取数据。 3.sender 调用各个公司提供的mail-privider和sms-privider,按照某个并发度,从redis读取邮件,短信并发送, alarm生成的报警短信和报警邮件是直接写入redis即可,由sender来发送。 4.mail-privider&&sms-provider 发送邮件短信接口 5.protal 配置报警策略的地方 6.HBS Heartbeat Server心跳服务,只依赖Protal的DB

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

postgresql架构基础

PostgreSQL使用一种客户端/服务器的模型。一次PostgreSQL会话由下列相关的进程(程序)组成: 一个服务器进程,它管理数据库文件、接受来自客户端应用与数据库的联接并且代表客户端在数据库上执行操作。 该数据库服务器程序叫做postgres。 那些需要执行数据库操作的用户的客户端(前端)应用。 客户端应用可能本身就是多种多样的:可以是一个面向文本的工具, 也可以是一个图形界面的应用,或者是一个通过访问数据库来显示网页的网页服务器,或者是一个特制的数据库管理工具。 一些客户端应用是和 PostgreSQL发布一起提供的,但绝大部分是用户开发的。 和典型的客户端/服务器应用(C/S应用)一样,这些客户端和服务器可以在不同的主机上。 这时它们通过 TCP/IP 网络联接通讯。 你应该记住的是,在客户机上可以访问的文件未必能够在数据库服务器机器上访问(或者只能用不同的文件名进行访问)。 PostgreSQL服务器可以处理来自客户端的多个并发请求。 因此,它为每个连接启动("forks")一个新的进程。 从这个时候开始,客户端和新服务器进程就不再经过最初的 postgres进程的干涉进行通讯。 因此,主服务器进程总是在运行并等待着客户端联接, 而客户端和相关联的服务器进程则是起起停停。 PostgreSQL 结构如下: Potgres(常驻进程) 管理后端的常驻进程,也称为’postmaster’。其默认监听UNIX Domain Socket和TCP/IP(Windows等,一部分的平台只监听tcp/ip)的5432端口,等待来自前端的的连接处理。监听的端口号可以在PostgreSQL的设置文件postgresql.conf里面可以改。 一旦有前端连接过来,postgres会通过fork(2)生成子进程。没有Fork(2)的windows平台的话,则利用createProcess()生成新的进程。这种情形的话,和fork(2)不同的是,父进程的数据不会被继承过来,所以需要利用共享内存把父进程的数据继承过来。 Postgres(子进程) 子进程根据pg_hba.conf定义的安全策略来判断是否允许进行连接,根据策略,会拒绝某些特定的IP及网络,或者也可以只允许某些特定的用户或者对某些数据库进行连接。 Postgres会接受前端过来的查询,然后对数据库进行检索,最好把结果返回,有时也会对数据库进行更新。更新的数据同时还会记录在事务日志里面(PostgreSQL称为WAL日志),这个主要是当停电的时候,服务器当机,重新启动的时候进行恢复处理的时候使用的。另外,把日志归档保存起来,可在需要进行恢复的时候使用。在PostgreSQL 9.0以后,通过把WAL日志传送其他的postgreSQL,可以实时得进行数据库复制,这就是所谓的‘数据库复制’功能。 其他的进程 Postgres之外还有一些辅助的进程。这些进程都是由常驻postgres启动的进程。 Writer process Writer process在适当的时间点把共享内存上的缓存写往磁盘。通过这个进程,可以防止在检查点的时候(checkpoint),大量的往磁盘写而导致性能恶化,使得服务器可以保持比较稳定的性能。Background writer起来以后就一直常驻内存,但是并非一直在工作,它会在工作一段时间后进行休眠,休眠的时间间隔通过postgresql.conf里面的参数bgwriter_delay设置,默认是200微秒。 这个进程的另外一个重要的功能是定期执行检查点(checkpoint)。 检查点的时候,会把共享内存上的缓存内容往数据库文件写,使得内存和文件的状态一致。通过这样,可以在系统崩溃的时候可以缩短从WAL恢复的时间,另外也可以防止WAL无限的增长。 可以通过postgresql.conf的checkpoint_segments、checkpoint_timeout指定执行检查点的时间间隔。 WAL writer process WAL writer process把共享内存上的WAL缓存在适当的时间点往磁盘写,通过这样,可以减轻后端进程在写自己的WAL缓存时的压力,提高性能。另外,非同步提交设为true的时候,可以保证在一定的时间间隔内,把WAL缓存上的内容写入WAL日志文件。 Archive process Archive process把WAL日志转移到归档日志里。如果保存了基础备份以及归档日志,即使实在磁盘完全损坏的时候,也可以回复数据库到最新的状态。 stats collector process 统计信息的收集进程。收集好统计表的访问次数,磁盘的访问次数等信息。收集到的信息除了能被autovaccum利用,还可以给其他数据库管理员作为数据库管理的参考信息。 Logger process 把postgresql的活动状态写到日志信息文件(并非事务日志),在指定的时间间隔里面,对日志文件进行rotate. Autovacuum启动进程 autovacuum launcher process是依赖于postmaster间接启动vacuum进程。而其自身是不直接启动自动vacuum进程的。通过这样可以提高系统的可靠性。 自动vacuum进程 autovacuum worker process进程实际执行vacuum的任务。有时候会同时启动多个vacuum进程。 wal sender / wal receiver wal sender 进程和wal receiver进程是实现postgresql复制(streaming replication)的进程。Wal sender进程通过网络传送WAL日志,而其他PostgreSQL实例的wal receiver进程则接收相应的日志。Wal receiver进程的宿主PostgreSQL(也称为Standby)接受到WAL日志后,在自身的数据库上还原,生成一个和发送端的PostgreSQL(也称为Master)完全一样的数据库。 后端的处理流程下面看看数据库引擎postgres子进程的处理概要。为了简单起见下面的说明中,把backend process简称为backend。Backend的main函数是PostgresMain (tcop/postgres.c)。 接收前端发送过来的查询(SQL文)SQL文是单纯的文字,电脑是认识不了的,所以要转换成比较容易处理的内部形式构文树parser tree,这个处理的称为构文解析。构文解析的模块称为parser.这个阶段只能够使用文字字面上得来的信息,所以只要没语法错误之类的错误,即使是select不存在的表也不会报错。这个阶段的构文树被称为raw parse tree. 构文处理的入口在raw_parser (parser/parser.c)。构文树解析完以后,会转换为查询树(Query tree)。这个时候,会访问数据库,检查表是否存在,如果存在的话,则把表名转换为OID。这个处理称为分析处理(Analyze), 进行分析处理的模块是analyzer。 另外,PostgreSQL的代码里面提到构文树parser tree的时候,更多的时候是指查询树Query tree。分析处理的模块的入口在parse_analyze (parser/analyze.c)PostgreSQL还通过查询语句的重写实现视图(view)和规则(rule), 所以需要的时候,在这个阶段会对查询语句进行重写。这个处理称为重写(rewrite),重写的入口在QueryRewrite (rewrite/rewriteHandler.c)。通过解析查询树,可以实际生成计划树。生成查询树的处理称为‘执行计划处理’,最关键是要生成估计能在最短的时间内完成的计划树(plan tree)。这个步骤称为’查询优化’(不叫query optimize, 而是optimize), 而完成这个处理的模块称为查询优化器(不叫query optimizer,而是optimizer, 或者称为planner)。执行计划处理的入口在standard_planner (optimizer/plan/planner.c)。按照执行计划里面的步骤可以完成查询要达到的目的。运行执行计划树里面步骤的处理称为执行处理‘execute’, 完成这个处理的模块称为执行器‘Executor’, 执行器的入口地址为,ExecutorRun (executor/execMain.c)执行结果返回给前端。返回到步骤一重复执行。

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

LNMP架构介绍

和LAMP不同的是,提供web服务的是Nginx 并且php是作为一个独立服务存在的,这个服务叫做php-fpm Nginx直接处理静态请求,动态请求会转发给php-fpm 原理是:lnmp里的php会启动一个服务,nginx把用户请求的php交给php-fpm处理,比如登录网站php要和mysql做交互,查用户的账号和密码,处理完之后,php-fpm会告诉nginx,nginx返回给用户一个结果。Nginx对于一些静态请求就自己处理了,不需要交给php处理。 本文转自 虾米的春天 51CTO博客,原文链接:http://blog.51cto.com/lsxme/2056606,如需转载请自行联系原作者

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

MyBatis整体架构

一、模块概览 模块名称 作用 主要类 反射模块 封装JAVA API,易用,进行了缓存优化 类型转换模块 绑定实参及映射查询结果集 日志模块 定位BUG,解决瓶颈 资源加载模块 类加载器,确定类加载器使用顺序 解析器模块 Xpath,初始化解析mybatis-confg.xml,mapper.xml, 动态SQL占位符 XPathParser TokenHandler EntityResolver 数据源模块 事务管理模块 抽象处理 缓存模块 提供一级和二级缓存 Binding模块 自定义Mapper接口与映射语句关联 二、模块分析 2.1 解析器模块 顾名思义:提供XML文件的解析。 GenericTokenParser:通用的占位符解析器。 TokenHandler:解析占位符 2.2 反射工具箱 Reflector:一个Reflector对应一个类,缓存了反射需要类的元信息。 ReflectorFactory:生成缓存Reflector TypeParameterResolver:工具类,解析指定类中的字段,方法返回值,方法参数的类型。 PropertyTokenizer 是一个Iterator接口,实现嵌套属性解析。 MetaClass:类级别元信息的封装和处理 ObjectWrapper:对象的包装,抽象了对象的属性信息,定义了更新属性,查询属性信息的方法。 ObjectFactory:创建指定类型的对象 MetaObject:调用ObjectWrapper,完成对象属性的检测,获取,设置等功能。 3. 类型转换 JDBC到JAVA类型转换 及JAVA类型到JDBC类型转换,两种不同类型的桥梁。 ResolverUtil:根据指定的条件查找指定包下的类。 3.日志模块 适配了第三方日志接口的差异。 JDBC调试:通过JDK动态代理方式,将JDBC操作通过指定的日志框架打印出来。 4.Binding MapperProxy:代理对象 MapperRegistry:Mapper接口及对应代理对象工厂的注册中心。 MapperMethod:封装了Mapper接口中对应方法的信息,以及SQL语句信息。 ParamNameResolver:Mapper接口定义的方法参数。记录参数列表中位置索引和参数名称对应关系 MethodSignature:Mapper接口中定义的方法的相关信息。 本文转自 randy_shandong 51CTO博客,原文链接:http://blog.51cto.com/dba10g/1966021,如需转载请自行联系原作者

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

ADFS 架构介绍

ADFS可以作为单台服务器存在,也可以作为群集存在。 在一个域中,可以存在多台独立的adfs,并且他们相互不干扰也不存在任何关系。也就是说允许存在多个adfs系统,用于提供给不同服务。例如y.com中可以存在一台adfs.y.com的联合身份验证服务器和存在一台sso.y.com的联合身份验证服务器,这两台服务器彼此独立。 另外一种情况就是adfs的群集,这分两种情况, 一种是使用windows内置数据库, 一种是使用sql数据库。 区别在于,使用windows内置数据库的adfs有一台主服务器,其他是从属服务器,其中主服务器可以写入adfs数据库,而其他从服务器只能提供adfs的验证,数据库可读,但是不可写入。也可以正常提供adfs服务,但是要进行系统配置的时候只能配置主服务器,如添加一个信赖方配置,从服务器无法配置。 而使用sql数据库,不存在从属关系,任意一台ADFS服务器都可以配置,并且会自动同步到所有服务器 下面找到一篇文章介绍,转载自:http://www.myexception.cn/dynamics-crm/2155784.html 默认拓扑Active Directory联合身份验证服务(AD FS)是联合服务器场,使用Windows内部数据库(WID)。 在这种拓扑,AD FS使用WID作为存储的所有联合服务器加入到该场的AD FS配置数据库。 服务器场复制和维护场中每台服务器的配置数据库中的联合身份验证服务数据。AD FS Windows Server 2012 R2中启用具有100个或更少信赖方信任配置使用最多30个服务器使用WID的联合服务器场的组织。 创建第一个联合服务器场中的操作也将创建新的联合身份验证服务。当您使用WID的AD FS配置数据库时,在服务器场中创建的第一个联合服务器称为主联合服务器。这意味着此计算机配置AD FS配置数据库的读/写副本。 为此服务器场配置的所有其他联合服务器称为辅助联合服务器因为它们必须将复制到它们在本地存储的AD FS配置数据库的只读副本的主联合服务器所做的任何更改。 下表提供有关使用WID服务器场的摘要。 使用它来计划您的实现。 1-100 RP 信任 超过 100 个 RP 信任 1-30 AD FS 节点 WID 支持 使用 WID 的所需 SQL 不支持 超过 30 AD FS 节点 使用 WID 的所需 SQL 不支持 使用 WID 的所需 SQL 不支持 此拓扑图的优缺点: 1、WID是随Windows;因此,无需购买SQL Server 2、提供对内部用户的SSO访问 拓扑图: 注意: 如果在此单个NLB 主机上出现故障,用户不能访问联合应用程序或服务。 如果您的业务要求不允许存在单点故障,请添加其他 NLB 主机。 本文转自 流原炫 51CTO博客,原文链接:http://blog.51cto.com/xiaoyuanzheng/1964280

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

BMC测试架构

A Test Framework of BMC for platform team Table of Contents A Test Framework of BMC for platform team.. 1 Introduction. 1 Requirement Analyze. 2 General Design. 2 Requirement. 2 Not requirement:3 Model Design. 3 Pre-run model3 Functional model3 IPMI device “Global” Commands. 3 BMC Watchdog Timer Commands. 4 Chassis Commands. 4 Event commands. 5 PEF and Alerting command. 5 SEL commands. 5 SDR Repository command. 5 FRU Inventory Device Commands. 6 Event Filter Table. 6 Sensor Device commands. 6 Platform-specific OEM command. 7 Post-run model7 Implement. 7 Requirement. 7 User interface. 7 Schedule. 7 Introduction As theone most important component of a server, BMC is used to monitor system environmentmonitoring, hardware error and record related logs, so its high availabilityand stability is critical to us. Currently platform always use some manualscripts or commands to do BMC test, in fact the scripts and commands can be puttogether and re-used for other platform, and we can leverage other team’s testframework such as CTH test platform to test it automatically, therefore oneTest Frame work for BMC test is need, and this document is used to describe thedesign of the framework. RequirementAnalyze Typically uses cases include: 1.OEM SEL decodingTest for customer ipmitool/unit test 2.BMC stress test 3.BMC function test 4.BMC regression test 5.System monitro 6.Platform monitor 7.Firmware upgrade 8.Netmon GeneralDesign Requirement ·support both local KCS test and LAN test ·Could be integrate with EVT test framework ·Could be integrated with CTH test tools oGraphic user interface; oSupport auto Log; oSupport automatically report; oTests mode/collection configurable; ·To be easily expanded for new platform; ·To be easily expanded for other component This requires that other software component own by platform team such asplatmon/error handling will be easily tested by this framework. ·Support auto-training; That means the framework will record the test cases which once detectFW/Software problem, and will automatically add them into test case for latertests.Accordingto experience, because we always meet problem when run BMC reset, firmwareupgrade , sensor reading and power cycle test, these type commands should becollected by auto-training mechanism. ·Support multiply test modes: function test;random test; stress test oFunction test:test for every component/unit one by one; oRandom test: the random test generator willproduce the random test cases, such as random raw data, random SELs to BMC oStress test: a.Component level stress test: Many commands run together on the same component such as SEL / SDR / FRU/ Watchdog / CPLD at the same time toverify its availability. b.System level stress test: Many components ran stress test at the same time ·Support an interface to add platform-specifictest; ·The framework makes full use of code withcurrent DDOS The customer ipmitool is implemented in our DDOS according coming BMCspecification, so maybe we could reuse the code and test scripts ·The framework should define test level/log level The test level is used to define the test granularity (sensor level,component level, bus level, function level, chip level) while the log levelhelp debug and log more details about the execution and output of the testcases. ·Base on small generic test sets To start this work easily, we willchoose a basic test cases collection maybe included by all platform, such asBMC SEL, user , SDR, reset, Lan, Fan, FRU and power control command. Not requirement: ·Test for some OEM command which must operatehardware manually; ·Test for whose result may need manuallyinvestigation. ModelDesign Pre-run model Check BMC version requirement; Check BIOS version requirement; check extra parameters; check BMC is in normal state; save BMC IPMIuser/sol/serial/channel/mac/DHCP/IP default configuration; stop system and platform monitro; Functional Test IPMI device “Global” Commands ·Get Device ID command ·Warm Reset command ·Cold Reset command ·Get Self Tests Results command ·Manufacturing Test on command ·Set ACPI power state command ·Get ACPI power state command ·Get Device GUID command ·Broadcast “Get Device ID” command ·Firmware Firewall & Command Discoverycommands ·IPMI Messaging Support Commands oSet BMC Global Enables oGet BMC Global Enables oClear Message Flags oGet Message Flags oGet Message oSend message §Get BT interface Capabilities §Master write-read §IPMI serial/Modem Commands §Set Serial/Modem Configuration §Get Serial/Modemconfiguration §Serial / Modem connection Activ §SOL command ( Optional) §SOL Activating §Get SOL configuration Parameters §Set SOL configuration Parameters PEF and Alerting command Get PEF Capabilities Arm PEF Postpone Timer Set PEF Configuration Parameters Get PEF Configuration Parameters Set Last Processor Event ID Get Last Processor Event ID BMC Watchdog Timer Commands Reset watchdog timer Set Watchdog timer Get Watchdog timer (On expiration of the Watchdog timeout: vSystem Reset vSystem Power Off vSystem power cycle vPre-timeout interrupt (Optional) Chassis Commands Get Chassis capabilities Get Chassis Status Chassis control Chassis Reset Event commands Set event receiver Get event receiver Platform event message command SEL component Trigger all possible SELs in scripts; Delete SELS; Full SELs; Empty SELs; Get SEL Info Get SEL Entry Add SEL Entry Partial Add SEL entry Clear SEL Get SEL time Set SEL time OEM SEL decoding test (How to do the test with our OEM SELsdecoding code?) SDR Repository command Get SDR Repository Info Reserve SDR Repository Get SDR Add SDR Partial Add SDR Clear SDR Repository Get SDR Repository Time Set SDR Repository Time FRU Inventory Device Commands Get Device ID Get Self Test Results Broadcast Get Device ID Get Sensor Reading Set Event Receiver Get Event Receiver Platform Event Event Filter Table Get EFT list Check whether EFT works How to do PEF auto test? Sensor Device commands Static and Dynamic Senor Devices Get Device SDR info commands Get Device SDR command Reserve Devices SDR Repositorycommand Get sensor Reading Factors command Set sensor Hysteresis command Get sensor Hysteresis command Set Sensor Threshold command Get sensors event Enable command Set sensors event disabled command Re-arm sensor Events command User controlling command Lan command Platform-specific OEM command OEM SELs; OEM SLIC command; OEM NVRAM/BBU command (How to classified different OEM commands per platforms?) Random Test Using “ipmitoolevent” command to cover all OEM SEL decoding, this is easy to be done by ascript: Step 1: get allsensors; Step 2: for everysensor, list all possible state Step 3:Assert/Deassert every state Step 4: checkwhether SEL decoding the event correctly. Another method isusing “raw 0x40 0x41” command to emulate all possible SEL, and then using “ipmitoolsel list” to check whether successful to decode them. Stress and Integration Test Power button Test for many times Short presspre-boot Long press pre-boot Short presspost-boot Long presspost-boot Fan controlling Test for manytimes One Fan enterauto-manual control mode Multiply Fancontrolling method switch Sequent Fancontrolling command LED Test for many times Chassis LED Test SP LED Test FAN LED Test SLIC LED Test PSU LED Test Disk LED Test PSU SEL Test Unpowered PSUinserted Powered PSUinserted Unpowered PSU removed powered PSU removed Firmware program Test Firmware versionget Firmware upgrade Firmware downgrade Firmware checksum Firmware otheroption Performance Test Measure keyperformance for most frequent used commands, and compare it with other platform Post-run model check BMC is in normal state; restore BMC IPMI user/sol/serial/FAN/LED/channel/mac/DHCP/IP defaultconfiguration; restore system and platform monitor; Record logs in three different lawer: And then analyze above logs: PASS rate/ FAILrate: ·Command level log: OK/ERROR ·Case level log Component level log; Log upload; Implement Requirement ·Unified final result format: $component test :PASS/FAIL / Unsupported/Not Run ·Easily to expand to new platform for all OEMcommand (Try to reuse all command function in sub script) ·Cover all possible IPMI command maybe used by system daemon process 本文转自存储之厨51CTO博客,原文链接:http://blog.51cto.com/xiamachao/1681454 ,如需转载请自行联系原作者

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

LAMP架构介绍

LAMP是Linux Apache(httpd) MySQL PHP的简写 PHP网站(Google、淘宝、百度、51cto博客) 三个角色可以在一台机器,也可以分开(httpd和PHP要在一起) MySQL是一个关系型数据库,由mysql ab公司开发,mysql在2008年被 sun公司收购,2009年sun公司被oracle公司收购 MySQL官网https://www.mysql.com 最新版本5.7GA/8.0DMR Mariadb为MySQL的一个分支,官网https:mariadb.com/最新版本10.2 MariaDB主要由SkySQL公司(现更名为MariaDB公司)维护,SkySQL公司由MySQL原作者带领原班人马创立 Mariadb5.5版本对应MySQL的5.5,10.0对应MySQL5.6 community 社区版本,enterprise 企业版,GA(Generally Available)指通过版本,在生产环境中用的,DMR(Development Milestone Release)开发里程碑发布版本,RC(Release Candidate)发行候选版本,Beta开放测试版本,Alpha内部测试版本 安装MySQL MySQL的几种常用安装包:rpm(不能指定安装路径)、源码、二进制免编译包(可以指定安装路径) # cd/usr/local/src/ #<==建议以后所有软件包都放在这个目录下面 # uname -i或uname -a #<==查看Linux是多少位 在服务器安装LAMP环境时,wget时提示 -bash:wget command not found ,很明显这是没有安装wget软件包。一般Linux最小化安装时,wget是会默认被安装 解决方法:yum 安装 # yum install -y wget 本文转自 yzllinux博客,原文链接: http://blog.51cto.com/12947851/2073338如需转载请自行联系原作者

资源下载

更多资源
Nacos

Nacos

Nacos /nɑ:kəʊs/ 是 Dynamic Naming and Configuration Service 的首字母简称,一个易于构建 AI Agent 应用的动态服务发现、配置管理和AI智能体管理平台。Nacos 致力于帮助您发现、配置和管理微服务及AI智能体应用。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据、流量管理。Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。

Spring

Spring

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

Rocky Linux

Rocky Linux

Rocky Linux(中文名:洛基)是由Gregory Kurtzer于2020年12月发起的企业级Linux发行版,作为CentOS稳定版停止维护后与RHEL(Red Hat Enterprise Linux)完全兼容的开源替代方案,由社区拥有并管理,支持x86_64、aarch64等架构。其通过重新编译RHEL源代码提供长期稳定性,采用模块化包装和SELinux安全架构,默认包含GNOME桌面环境及XFS文件系统,支持十年生命周期更新。

WebStorm

WebStorm

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

用户登录
用户注册