首页 文章 精选 留言 我的

精选列表

搜索[有状态计算],共10000篇文章
优秀的个人博客,低调大师

w2 有秒计时的数字时钟

题目内容: 这一周的编程题是需要你在课程所给的时钟程序的基础上修改而成。但是我们并不直接给你时钟程序的代码,请根据视频自己输入时钟程序的Display和Clock类的代码,然后来做这个题目。 我们需要给时钟程序加上一个表示秒的Display,然后为Clock增加以下public的成员函数: public Clock(int hour, int minute, int second); 用hour, minute和second初始化时间。 public void tick(); “嘀嗒”一下,时间走1秒。 public String toString(); 返回一个String的值,以“hh:mm:ss“的形式表示当前时间。这里每个数值都占据两位,不足两位时补0。如“00:01:22"。注意其中的冒号是西文的,不是中文的。 提示:String.format()可以用和printf一样的方式来格式化一个字符串。 另外写一个Main类,它的main函数为下面的样子,注意,必须原封不动地作为Main的main函数: public static void main(String[] args) { java.util.Scanner in = new java.util.Scanner(System.in); Clock clock = new Clock(in.nextInt(), in.nextInt(), in.nextInt()); clock.tick(); System.out.println(clock); in.close(); } 注意!在提交的时候,把Main、Clock和Display三个类的代码合并在一起,其中Main类是public的,而Clock和Display类是没有修饰符的。另外,千万注意第一行不能有package语句。 输入格式: 采用给定的main函数无需考虑输入输出。 输出格式: 采用给定的main函数无需考虑输入输出。 输入样例: 采用给定的main函数无需考虑输入输出。 输出样例: 采用给定的main函数无需考虑输入输出。 import java.util.Scanner; public class Main { public static void main(String[] args) { java.util.Scanner in = new java.util.Scanner(System.in); Clock clock = new Clock(in.nextInt(), in.nextInt(), in.nextInt()); clock.tick(); System.out.println(clock); in.close(); } } class Clock { private Display hour = new Display(24); private Display minute = new Display(60); private Display second = new Display(60); public static void main(String[] args) { java.util.Scanner in = new java.util.Scanner(System.in); Clock clock = new Clock(in.nextInt(), in.nextInt(), in.nextInt()); clock.tick(); System.out.println(clock); in.close(); } public Clock(int hour, int minute, int second) { this.hour.setValue(hour); this.minute.setValue(minute); this.second.setValue(second); } public void tick() { second.increase(); if( second.getValue() == 0 ) { minute.increase(); if( minute.getValue() == 0) { hour.increase(); } } } public String toString() { return String.format("%02d:%02d:%02d", hour.getValue(), minute.getValue(), second.getValue()); } } class Display { private int value = 0; private int limit = 0; public Display(int limit) { this.limit = limit; } public void increase(){ value++; if( value == limit ) { value = 0; } } public int getValue() { return value; } public void setValue(int value) { this.value = value; } public static void main(String[] args) { Display d = new Display(24); for( ; ; ) { d.increase(); System.out.println(d.getValue()); } } }

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

解决方案有哪些?

什么是跨域?跨域是指一个域下的文档或脚本试图去请求另一个域下的资源,这里跨域是广义的。 广义的跨域: 1.) 资源跳转: A链接、重定向、表单提交2.) 资源嵌入: 、 <frame>等dom标签, 还有样式中background:url()、 @font-face()等文件外链3.) 脚本请求: js发起的ajax请求、dom和js对象的跨域操作等 其实我们通常所说的跨域是狭义的,是由浏览器同源策略限制的一类请求场景。 什么是同源策略? 同源策略/SOP(Same origin policy)是一种约定,由Netscape公司1995年引入浏览器,它是浏览器最核心也最基本的安全功能,如果缺少了同源策略,浏览器很容易受到XSS、CSFR等攻击。所谓同源是指"协议+域名+端口"三者相同,即便两个不同的域名指向同一个ip地址,也非同源。 同源策略限制以下几种行为: 1.) Cookie、LocalStorage 和 IndexDB 无法读取2.) DOM 和 Js对象无法获得3.) AJAX 请求不能发送 常见跨域场景 跨域解决方案1、 通过jsonp跨域2、 document.domain + iframe跨域3、 location.hash + iframe4、 window.name + iframe跨域5、 postMessage跨域6、 跨域资源共享(CORS)7、 nginx代理跨域8、 nodejs中间件代理跨域9、 WebSocket协议跨域 一、 通过jsonp跨域通常为了减轻web服务器的负载,我们把js、css,img等静态资源分离到另一台独立域名的服务器上,在html页面中再通过相应的标签从不同域名下加载静态资源,而被浏览器允许,基于此原理,我们可以通过动态创建script,再请求一个带参网址实现跨域通信。 1)原生实现: login?user=admin&callback=onBack'; document.head.appendChild(script); // 回调执行函数 function onBack(res) { alert(JSON.stringify(res)); } 服务端返回如下(返回时即执行全局函数): onBack({"status": true, "user": "admin"}) 2)jquery ajax: $.ajax({ url: 'http://www.domain2.com:8080/login', type: 'get', dataType: 'jsonp', // 请求方式为jsonp jsonpCallback: "onBack", // 自定义回调函数名 data: {}}); 3)vue.js: this.$http.jsonp('http://www.domain2.com:8080/login', { params: {}, jsonp: 'onBack'}).then((res) => { console.log(res); }) 后端node.js代码示例: var querystring = require('querystring');var http = require('http');var server = http.createServer();server.on('request', function(req, res) { var params = qs.parse(req.url.split('?')[1]); var fn = params.callback; // jsonp返回设置 res.writeHead(200, { 'Content-Type': 'text/javascript' }); res.write(fn + '(' + JSON.stringify(params) + ')'); res.end();});server.listen('8080');console.log('Server is running at port 8080...'); jsonp缺点:只能实现get一种请求。 二、 document.domain + iframe跨域此方案仅限主域相同,子域不同的跨域应用场景。 实现原理:两个页面都通过js强制设置document.domain为基础主域,就实现了同域。 1)父窗口(http://www.domain.com/a.html) src="http://child.domain.com/b.html"> 2)子窗口(http://child.domain.com/b.html) window.parent.user); 三、 location.hash + iframe跨域实现原理: a欲与b跨域相互通信,通过中间页c来实现。 三个页面,不同域之间利用iframe的location.hash传值,相同域之间直接js访问来通信。 具体实现:A域:a.html -> B域:b.html -> A域:c.html,a与b不同域只能通过hash值单向通信,b与c也不同域也只能单向通信,但c与a同域,所以c可通过parent.parent访问a页面所有对象。 1)a.html:(http://www.domain1.com/a.html) src="http://www.domain2.com/b.html" style="display:none;"> 2)b.html:(http://www.domain2.com/b.html) src="http://www.domain1.com/c.html" style="display:none;"> 3)c.html:(http://www.domain1.com/c.html) location.hash.replace('#user=', '')); }; 四、 window.name + iframe跨域window.name属性的独特之处:name值在不同的页面(甚至不同域名)加载后依旧存在,并且可以支持非常长的 name 值(2MB)。 1)a.html:(http://www.domain1.com/a.html) var proxy = function(url, callback) { var state = 0; var iframe = document.createElement('iframe'); // 加载跨域页面iframe.src = url; // onload事件会触发2次,第1次加载跨域页,并留存数据于window.nameiframe.onload = function() { if (state === 1) { // 第2次onload(同域proxy页)成功后,读取同域window.name中数据callback(iframe.contentWindow.name); destoryFrame(); } else if (state === 0) { // 第1次onload(跨域页)成功后,切换到同域代理页面iframe.contentWindow.location = 'http://www.domain1.com/proxy.html'; state = 1; } }; document.body.appendChild(iframe); // 获取数据以后销毁这个iframe, 释放内存;这也保证了安全(不被其他域frame js访问)function destoryFrame() {iframe.contentWindow.document.write('');iframe.contentWindow.close(); document.body.removeChild(iframe); }};// 请求跨域b页面数据proxy('http://www.domain2.com/b.html', function(data) { alert(data);}); 2)proxy.html:(http://www.domain1.com/proxy....中间代理页,与a.html同域,内容为空即可。 3)b.html:(http://www.domain2.com/b.html) 总结:通过iframe的src属性由外域转向本地域,跨域数据即由iframe的window.name从外域传递到本地域。这个就巧妙地绕过了浏览器的跨域访问限制,但同时它又是安全操作。 五、 postMessage跨域postMessage是HTML5 XMLHttpRequest Level 2中的API,且是为数不多可以跨域操作的window属性之一,它可用于解决以下方面的问题: a.) 页面和其打开的新窗口的数据传递b.) 多窗口之间消息传递c.) 页面与嵌套的iframe消息传递d.) 上面三个场景的跨域数据传递 用法:postMessage(data,origin)方法接受两个参数data: html5规范支持任意基本类型或可复制的对象,但部分浏览器只支持字符串,所以传参时最好用JSON.stringify()序列化。origin: 协议+主机+端口号,也可以设置为"*",表示可以传递给任意窗口,如果要指定和当前窗口同源的话设置为"/"。 1)a.html:(http://www.domain1.com/a.html) src="http://www.domain2.com/b.html" style="display:none;"> }; // 向domain2传送跨域数据 iframe.contentWindow.postMessage(JSON.stringify(data), 'http://www.domain2.com'); }; // 接受domain2返回数据 window.addEventListener ('message', function(e) { alert('data from domain2 ---> ' + e.data); }, false); 2)b.html:(http://www.domain2.com/b.html) data.number = 16; // 处理后再发回domain1window.parent.postMessage(JSON.stringify(data),'http://www.domain1.com'); } }, false); 六、 跨域资源共享(CORS)普通跨域请求:只服务端设置Access-Control-Allow-Origin即可,前端无须设置,若要带cookie请求:前后端都需要设置。 需注意的是:由于同源策略的限制,所读取的cookie为跨域请求接口所在域的cookie,而非当前页。如果想实现当前页cookie的写入,可参考下文:七、nginx反向代理中设置proxy_cookie_domain 和 八、NodeJs中间件代理中cookieDomainRewrite参数的设置。 目前,所有浏览器都支持该功能(IE8+:IE8/9需要使用XDomainRequest对象来支持CORS)),CORS也已经成为主流的跨域解决方案。 1、 前端设置:1)原生ajax // 前端设置是否带cookiexhr.withCredentials = true; 示例代码: var xhr = new XMLHttpRequest();// IE8/9需用window.XDomainRequest兼容// 前端设置是否带cookiexhr.withCredentials = true;xhr.open('post', 'http://www.domain2.com:8080/login', true);xhr.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');xhr.send('user=admin');xhr.onreadystatechange = function() { if (xhr.readyState == 4 && xhr.status == 200) { alert(xhr.responseText); }}; 2)jQuery ajax $.ajax({ ...xhrFields: {withCredentials: true // 前端设置是否带cookie },crossDomain: true, // 会让请求头中包含跨域的额外信息,但不会含cookie ...}); 3)vue框架在vue-resource封装的ajax组件中加入以下代码: Vue.http.options.credentials = true 2、 服务端设置:若后端设置成功,前端浏览器控制台则不会出现跨域报错信息,反之,说明没设成功。 1.)Java后台: /* 导入包:import javax.servlet.http.HttpServletResponse; 接口参数中定义:HttpServletResponse response */response.setHeader ("Access-Control-Allow-Origin","http://www.domain1.com"); // 若有端口需写全(协议+域名+端口)response.setHeader("Access-Control-Allow-Credentials", "true"); 2.)Nodejs后台示例: var http = require('http');var server = http.createServer();var qs = require('querystring');server.on('request', function(req, res) { var postData = ''; // 数据块接收中req.addListener('data', function(chunk) { postData += chunk; }); // 数据接收完毕req.addListener('end', function() { postData = qs.parse(postData); // 跨域后台设置 res.writeHead(200, { 'Access-Control-Allow-Credentials': 'true', // 后端允许发送Cookie'Access-Control-Allow-Origin': 'http://www.domain1.com', // 允许访问的域(协议+域名+端口) 'Set-Cookie': 'l=a123456;Path=/;Domain=www.domain2.com; HttpOnly' // HttpOnly:脚本无法读取cookie }); res.write(JSON.stringify(postData)); res.end(); });});server.listen('8080');console.log('Server is running at port 8080...'); 七、 nginx代理跨域1、 nginx配置解决iconfont跨域浏览器跨域访问js、css、img等常规静态资源被同源策略许可,但iconfont字体文件(eot|otf|ttf|woff|svg)例外,此时可在nginx的静态资源服务器中加入以下配置。 location / { add_header Access-Control-Allow-Origin *;} 2、 nginx反向代理接口跨域 跨域原理: 同源策略是浏览器的安全策略,不是HTTP协议的一部分。服务器端调用HTTP接口只是使用HTTP协议,不会执行JS脚本,不需要同源策略,也就不存在跨越问题。 实现思路:通过nginx配置一个代理服务器(域名与domain1相同,端口不同)做跳板机,反向代理访问domain2接口,并且可以顺便修改cookie中domain信息,方便当前域cookie写入,实现跨域登录。 nginx具体配置: proxy服务器server { listen 81; server_name www.domain1.com; location / { proxy_pass http://www.domain2.com:8080; #反向代理 proxy_cookie_domain www.domain2.com www.domain1.com; #修改cookie里域名 index index.html index.htm; 当用webpack-dev-server等中间件代理接口访问nignx时, 此时无浏览器参与, 故没有同源限制, 下面的跨域配置可不启用 add_header Access-Control-Allow-Origin http://www.domain1.com; #当前端只跨域不带cookie时, 可为*add_header Access-Control-Allow-Credentials true; }} 1) 前端代码示例: var xhr = new XMLHttpRequest();// 前端开关:浏览器是否读写cookiexhr.withCredentials = true;// 访问nginx中的代理服务器xhr.open('get', 'http://www.domain1.com:81/?user=admin', true);xhr.send(); 2) Nodejs后台示例: var http = require('http');var server = http.createServer();var qs = require('querystring');server.on('request', function(req, res) { var params = qs.parse(req.url.substring(2)); // 向前台写cookie res.writeHead(200, { 'Set-Cookie': 'l=a123456;Path=/;Domain=www.domain2.com;HttpOnly' // HttpOnly:脚本无法读取 }); res.write(JSON.stringify(params)); res.end();});server.listen('8080');console.log('Server is running at port 8080...'); 八、 Nodejs中间件代理跨域node中间件实现跨域代理,原理大致与nginx相同,都是通过启一个代理服务器,实现数据的转发,也可以通过设置cookieDomainRewrite参数修改响应头中cookie中域名,实现当前域的cookie写入,方便接口登录认证。 1、 非vue框架的跨域(2次跨域)利用node + express + http-proxy-middleware搭建一个proxy服务器。 1)前端代码示例: var xhr = new XMLHttpRequest();// 前端开关:浏览器是否读写cookiexhr.withCredentials = true;// 访问http-proxy-middleware代理服务器xhr.open('get', 'http://www.domain1.com:3000/login? user=admin', true);xhr.send(); 2)中间件服务器: var express = require('express');var proxy = require('http-proxy-middleware');var app = express();app.use('/', proxy({ // 代理跨域目标接口target: 'http://www.domain2.com:8080', changeOrigin: true, // 修改响应头信息,实现跨域并允许带cookie onProxyRes: function(proxyRes, req, res) { res.header('Access-Control-Allow-Origin', 'http://www.domain1.com'); res.header('Access-Control-Allow-Credentials', 'true'); }, // 修改响应信息中的cookie域名 cookieDomainRewrite: 'www.domain1.com' // 可以为false,表示不修改})); app.listen(3000);console.log(' Proxy server is listen at port 3000...'); 3.)Nodejs后台同(六:nginx) 2、 vue框架的跨域(1次跨域)利用node + webpack + webpack-dev-server代理接口跨域。在开发环境下,由于vue渲染服务和接口代理服务都是webpack-dev-server同一个,所以页面与代理接口之间不再跨域,无须设置headers跨域信息了。 webpack.config.js部分配置: module.exports = { entry: {}, module: {}, ...devServer: { historyApiFallback: true, proxy: [{ context: '/login', target: 'http://www.domain2.com:8080', // 代理跨域目标接口 changeOrigin: true, secure: false, // 当代理某些https服务报错时用 cookieDomainRewrite: 'www.domain1.com' // 可以为false,表示不修改 }], noInfo: true }} 九、 WebSocket协议跨域WebSocket protocol是HTML5一种新的协议。它实现了浏览器与服务器全双工通信,同时允许跨域通讯,是server push技术的一种很好的实现。原生WebSocket API使用起来不太方便,我们使用Socket.io,它很好地封装了webSocket接口,提供了更简单、灵活的接口,也对不支持webSocket的浏览器提供了向下兼容。 1)前端代码: user input: 2)Nodejs socket后台: var http = require('http');var socket = require('socket.io');// 启http服务var server = http.createServer(function(req, res){ res.writeHead(200, { 'Content-type': 'text/html' }); res.end();});server.listen('8080');console.log('Server is running at port 8080...');// 监听socket连接socket.listen(server).on('connection', function(client) { // 接收信息 client.on('message', function(msg) { client.send('hello:' + msg); console.log('data from client: ---> ' + msg); }); // 断开处理 client.on('disconnect', function() { console.log('Client socket has closed.'); });}); 原文发布时间为:2018-06-29本文作者:安静de沉淀本文来自云栖社区合作伙伴“Web项目聚集地”,了解相关信息可以关注“Web项目聚集地”。

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

有经验JAVA程序员如何提升自己?

具有一到五年开发经验 需要学习内容很多JVM/分布式/高并发/性能优化/Spring MVC/Spring Boot/Spring Cloud/MyBatis/Netty源码分析等等等 01、透彻理解Tomcat原理手写动静态资源的实现 02、分享能源领域的分布式监测系统架构 03、分布式系统关键技术Rpc框架详解与实现 04、自己写一个SpringMVC框架 05、使用Jsoup实现网页爬虫功能 06、JAVA高级进阶之NIO通信架构原理详解 07、高手必过之路透彻理解Spring容器IOC的原理分析 08、并发编程之深入业务隔离场景原理详解 09、深入浅出Java虚拟机 10、源码分析之手写MyBatis 11、大型分布式服务治理技术-Dubbo企业级实战 12、大流量高并发之限流特技 13、深入分析热部署机制的原理实现 14、高性能反向代理服务器Nginx-动静分离实战 15、架构师必备技能之Spring MVC框架原理解析 16、大家可以点击加入群:468897908【Java架构/分布式/高并发】 下面为系统的学习方向01、maven的使用 maven的使用入门 maven私服的搭建及部署 maven坐标分析/父控设置 02、git版本管理及jenkins自动化构建 git使用入门培训 git常用命令分析和使用 jenkins环境搭建及插件配置 git+jenkins实现自动化构建 03、NoSql专题-redis高性能缓存 redis使用入门 redis常用命令及客户端的使用 redis高可用集群搭建 04、NoSql专题-mongodb mongodb使用入门 mongodb高可用集群搭建 mongodb常用命令及客户端的使用 05、分布式专题-zookeeper+dubbo服务协调 zookeeper安装部署及命令分析 zookeeper客户端的使用 zookeeper实现原理分析 dubbo的使用入门及配置分析 zookeeper+dubbo实现服务注册和发现 06、分布式专题-消息中间件 activeMq-jms规范及使用 activeMq消息分发机制分析 kafka实现原理剖析 kafka的数据传输事务性及实践练习 07、分布式缓存分析对比 memcache的原理分析及使用 memcache和redis的横向对比分析 分布式接口技术 webservice/RMI/restful的使用 09、高并发专题-数据库层面优化 分库分表的原理及规则讲解 数据库主备及高可用 10、性能调优专题-jvm调优 JVM原理剖析 jvm内存模型及垃圾回收器的分析 11、性能调优专题-容器性能优化 nginx性能优化 tomcat性能优化 12、性能调优专题-数据库优化 mysql常见优化手段分析及实践 13、高性能容器的使用 nginx使用入门 nginx负载均衡/反向代理实现 14、双十一专题-九阳真经 太极聚气之分布式压测平台 氤氲紫气之分布式缓存体系 盘龙真诀之分布式消息系统 金刚之躯之分布式跟踪系统 外功辅助之分布式配置系统 15、微服务架构技术栈分析 springboot的使用 16、分布式协调服务zookeeper zookeeper集群及相关概念分析 zookeeper java api的使用及实践 17、从集中式到分布式架构 分布式架构的演进过程 分布式架构的基石-TCP/UDP 18、分布式通信协议 分布式通信协议-HTTP及RESTful 分布式通信协议-webservice详解 分布式通信协议-RMI 分布式通信协议-序列化技术 19、分布式服务治理 dubbo控制台及监控中心的安装部署 dubbo常用配置分析 dubbo实战演练 20、NIO技术之-Netty NIO基本概念及BIO、AIO的对比分析 NIO核心设计思想剖析(Buffer/Channel..) Netty产生的背景及优缺点分析 Netty实现IM聊天系统 21、分布式缓存技术-Redis redis的安装及数据类型分析 Redis客户端的使用 Redis高可用方案实战 Redis+Lua脚本实现原子操作 22、高性能之道-MongoDB MongoDB高可用部署 MongoDB动态查询及索引剖析 MongoDB集成spring应用 23、数据库高性能之道-Mysql 分库分表深入分析 Mysql主从模型配置/Mycat的使用 24、分布式通信技术 JMS基本概念和模型 ActiveMQ结合Spring开发 ActiveMQ静态网络和**络链接 Kafka的高可用方案及原理分析 25、SOA架构及微服务架构 什么是SOA架构/为什么需要SOA 领域驱动设计方法/典型SOA架构设计 spring boot深入剖析 spring boot+dubbo企业实战 26、Docker虚拟化技术 Docker虚拟化技术(镜像/仓库/容器) Docker整合spring boot Docker 服务编排 27、导流技术 Nginx反向代理、负载均衡 Nginx进程模型分析 Nginx+keepalived高可用方案 28、微服务技术 spring boot(mvc) spring boot(REST) spring boot(验证) 29、spring cloud spring cloud config client spring cloud config server spring cloud netflix eureka spring cloud netflix ribbon spring cloud hystrix spring cloud feign spring cloud stream spring cloud bus spring cloud sleuth 30、分布式消息技术-kafka kafka高可用集群及介绍 kafka底层实现原理分析 31、分布式缓存-redis redis的数据类型分析 redis高可用集群方案 lua脚本在redis中的应用 32、高性能之道-MongoDB MongoDB的基本原理 MongoDB常用命令及客户端使用 手写基于MongoDB的ORM框架 MongoDB高可用解决方案 33、数据库高性能-Mysql 分库分表深入分析及主从模型 数据库中间件Mycat介绍 34、性能优化专题 从测试的角度解读如何衡量性能 了解Linux系统 35、虚拟机-JVM 内存模型、运行时数据 垃圾回收、GC日志 调优实战 36、容器优化-Tomcat tomcat架构分析 线程模型分析 tomcat调优实战 37、mysql数据库调优 Mysql底层存储分析 面试技巧之SQL执行计划及优化手段 工作一到五年的程序员朋友面对目前的技术无从下手,感到很迷茫可以加群744677563,里面有阿里Java高级大牛直播讲解知识点,分享知识,课程内容都是各位老师多年工作经验的梳理和总结,带着大家全面、科学地建立自己的技术体系和技术认知!

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

有设了enable secret ,enable password 就无效了

Cisco ios enable password 和 enable secret 的区别 6C3524_1#enable ? <0-15> Enable level <cr> 6C3524_1(config)#enable ? last-resort Define enable action if no TACACS servers respond password Assign the privileged level password secret Assign the privileged level secret use-tacacs Use TACACS to check enable passwords 6C3524_1(config)#enable password ? 0 Specifies an UNENCRYPTED password will follow 7 Specifies a HIDDEN password will follow LINE The UNENCRYPTED (cleartext) 'enable' password level Set exec level password 6C3524_1(config)#enable secret ? 0 Specifies an UNENCRYPTED password will follow 5 Specifies an ENCRYPTED secret will follow LINE The UNENCRYPTED (cleartext) 'enable' secret level Set exec level password //但是注意:在实际操作上enable password 0 passwordstr和enable password 7 passwordstr都会出错的,enable secret也同!所以只要记牢enable password是不加密的,enable secret是加密的就够了。还有设了enable secret,enable password就无效了。 本文转自9pc9com博客,原文链接: http://blog.51cto.com/215363/934901 如需转载请自行联系原作者

资源下载

更多资源
腾讯云软件源

腾讯云软件源

为解决软件依赖安装时官方源访问速度慢的问题,腾讯云为一些软件搭建了缓存服务。您可以通过使用腾讯云软件源站来提升依赖包的安装速度。为了方便用户自由搭建服务架构,目前腾讯云软件源站支持公网访问和内网访问。

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文件系统,支持十年生命周期更新。

用户登录
用户注册