首页 文章 精选 留言 我的

精选列表

搜索[在线课堂],共10010篇文章
优秀的个人博客,低调大师

杨老师课堂之JavaScript定时器案例的红绿灯设计

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/kese7952/article/details/80346866 <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>红绿灯倒计时</title> <style> .box { width: 250px; height: 52px; padding: 15px 30px; border: 2px solid #ccc; border-radius: 16px; margin: 0 auto; } .box .count { width: 60px; color: #666; font-size: 280%; line-height: 50px; padding-left: 6px; margin-left: 5px; border: 1px solid #fff } .box div { margin-left: 5px; float: left; width: 50px; height: 50px; border-radius: 50px; border: 1px solid #666; } .gray { background-color: #eee; } .red { background-color: red; } .yellow { background-color: yellow; } .green { background-color: #26ff00; } </style> </head> <body> <div class="box"> <div id="red"></div> <div id="yellow"></div> <div id="green"></div> <div class="count" id="count"></div> </div> <script> // 获取红、黄、绿灯以及倒计时的元素对象 var lamp = { red: { obj: document.getElementById('red'), timeout: 30, style: ['red', 'gray', 'gray'], next: 'green' }, yellow: { obj: document.getElementById('yellow'), timeout: 5, style: ['gray', 'yellow', 'gray'], next: 'red' }, green: { obj: document.getElementById('green'), timeout: 35, style: ['gray', 'gray', 'green'], next: 'yellow' }, changeStyle(style) { this.red.obj.className = style[0]; this.yellow.obj.className = style[1]; this.green.obj.className = style[2]; } }; var count = { obj: document.getElementById('count'), change: function(num) { this.obj.innerHTML = (num < 10) ? ('0' + num) : num; } }; var now = lamp.green; var timeout = now.timeout; lamp.changeStyle(now.style); count.change(timeout); setInterval(function() { if(--timeout <= 0) { now = lamp[now.next]; timeout = now.timeout; lamp.changeStyle(now.style); } count.change(timeout); }, 1000); </script> </body> </html>

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

杨老师课堂之JavaWeb项目架构之NFS文件服务器

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/kese7952/article/details/81013750 NFS简介 NFS(Network File System)即网络文件系统。 主要功能:通过网络(局域网)让不同的主机系统之间可以共享文件或目录。 主要用途:NFS网络文件系统一般被用来存储共享视频,图片,附件等静态资源文件。 NFS存储服务 无NFS文件共享存储 当用户A通过互联网上传文件时,经过负载均衡,随机或者定向分配到某个节点。但是当用户B去下载这个文件的时候,并不确定会向哪个节点发送请求,这样会导致用户存在一定几率下载不到的情况。 NFS_A.png 有NFS文件共享存储 当用户A通过互联网上传文件时,经过负载均衡,无论发送到哪个节点都会被存储到NFS文件服务器。但是当用户B去下载这个文件的时候,任何节点都可以读取NFS文件服务器的文件。 NFS_B.png NFS服务的优缺点 优点 简单容易上手 方便部署非常快速,维护十分简单 节省本地存储空间将常用的数据存放在一台服务器可以通过网络访问 缺点 在高并发下NFS效率/性能有限 NFS的数据是明文的,对数据完整性不做验证 多台机器挂载NFS服务器时,连接管理维护麻烦 容易发生单点故障,如果服务端宕机,所有客户端将不能访问 客户端没用用户认证机制,且数据是通过明文传送,安全性一般(一般建议在局域网内使用) RPC工作流程 170621082430983.png NFS支持的功能非常多,不同的功能会有不同的服务来完成,很多服务都需要监听在一些端口,其中的很多端口并不是固定的。这些服务在启动时,都需要向rpcbind服务注册一个端口,rpcbind服务随机选取一个未被使用的端口予以分配。rpcbind服务监听在111端口,所以rpcbind的主要功能就是指定每个RPC service对应的port number,并且通知给客户端,让客户端连接到正确的端口上去。 客户端向NFS服务器端请求的步骤: 首先用户访问网站程序,由程序在NFS客户端上发出存取NFS文件的请求,这是NFS客户端的RPC服务就不通过网络向NFS服务器端的RPC服务的111端口发出NFS文件存取功能的查询请求,包括要实现的什么功能。 NFS服务器端的RPC服务找到对应的已注册的NFS端口,通知NFS客户端的RPC服务。 此时NFS客户端获取到正确的端口,并与NFS联机存取数据。 NFS客户端把数据存取成功后,返回给客户端程序,告知用户存取结果。 注意:由于rpc service在启动时需要向rpcbind注册端口,所以rpcbind要先启动。另外若rpcbind重新启动,原来注册的数据也会不见,因此一但rpcbind重新启动,让所管理的服务因为需要重新启动以重新向rpcbind注册。 NFS服务器端配置 NFS服务器:192.168.1.180 检查并安装NFS [root@iZ2ze74fkxrls31tr2ia2fZ ~]# rpm -qa rpcbind nfs-utils nfs-utils-1.3.0-0.48.el7_4.1.x86_64 rpcbind-0.2.0-42.el7.x86_64 如果没有,安装 NFS 服务器所需的软件包,实际上需要安装两个包nfs-utils(nfs服务主程序)和rpcbind(rpc主程序), 不过当使用yum安装nfs-utils时会把rpcbind一起安装上。 yum install -y nfs-utils 配置说明 /etc/sysconfig/nfs #NFS的主配置文件 /etc/exports #配置共享目录的文件 /etc/exports的配置格式: nfs共享目录 nfs客户端地址1(参1,参2…..) 客户端地址2(参1,参2…) 说明: nfs共享目录:为nfs服务器要共享的实际目录,绝对目录。注意权限问题。 nfs客户端地址:为nfs服务器授权可以访问的客户端的地址,可以是单独的ip地址或主机名,域名。也可以是整个网段。 授权整个网段:eg:10.0.0.0/24 文件配置实例说明: /data/fileserver 192.168.1.190(rw,sync,no_root_squash) 若服务器端对/etc/exports文件进行了修改,可以通过exportfs命令重新加载服务而不需要重启服务。若重启服务需要重新向prcbind注册,而且对客户端的影响也很大,所以尽量使用exportfs命令来使配置文件生效。 exportfs: exportfs -ar #重新导出所有的文件系统 exportfs -r #导出某个文件系统 exportfs -au #关闭导出的所有文件系统 exportfs -u #关闭指定的导出的文件系统 相关参数 (man exports) A. 选项:选项用来设置输出目录的访问权限、用户映射等。 设置输出目录只读:ro 设置输出目录读写:rw B. 用户映射选项 all_squash:将远程访问的所有普通用户及所属组都映射为匿名用户或用户组(nfsnobody); no_all_squash:与all_squash取反(默认设置); root_squash:将root用户及所属组都映射为匿名用户或用户组(默认设置); no_root_squash:与rootsquash取反; anonuid=xxx:将远程访问的所有用户都映射为匿名用户,并指定该用户为本地用户(UID=xxx); anongid=xxx:将远程访问的所有用户组都映射为匿名用户组账户,并指定该匿名用户组账户为本地用户组账户(GID=xxx); C. 其它选项 secure:限制客户端只能从小于1024的tcp/ip端口连接nfs服务器(默认设置); insecure:允许客户端从大于1024的tcp/ip端口连接服务器; sync:将数据同步写入内存缓冲区与磁盘中,效率低,但可以保证数据的一致性; async:将数据先保存在内存缓冲区中,必要时才写入磁盘; wdelay:检查是否有相关的写操作,如果有则将这些写操作一起执行,这样可以提高效率(默认设置); no_wdelay:若有写操作则立即执行,应与sync配合使用; subtree:若输出目录是一个子目录,则nfs服务器将检查其父目录的权限(默认设置); no_subtree:即使输出目录是一个子目录,nfs服务器也不检查其父目录的权限,这样可以提高效率; 启动NFS服务端上nfs服务 1、先为rpcbind和nfs做开机启动: systemctl enable rpcbind.service systemctl enable nfs-server.service 2、然后分别启动rpcbind和nfs服务: systemctl start rpcbind.service systemctl start nfs-server.service 查看服务是否启动 [root@iZ2ze74fkxrls31tr2ia2fZ ~]# rpcinfo -p program vers proto port service 100000 4 tcp 111 portmapper 100000 3 tcp 111 portmapper 100000 2 tcp 111 portmapper 100000 4 udp 111 portmapper 100000 3 udp 111 portmapper 100000 2 udp 111 portmapper 100024 1 udp 47426 status 100024 1 tcp 35379 status 100005 1 udp 20048 mountd 100005 1 tcp 20048 mountd 100005 2 udp 20048 mountd 100005 2 tcp 20048 mountd 100005 3 udp 20048 mountd 100005 3 tcp 20048 mountd 100003 3 tcp 2049 nfs 100003 4 tcp 2049 nfs 100227 3 tcp 2049 nfs_acl 100003 3 udp 2049 nfs 100003 4 udp 2049 nfs 100227 3 udp 2049 nfs_acl 100021 1 udp 53046 nlockmgr 100021 3 udp 53046 nlockmgr 100021 4 udp 53046 nlockmgr 100021 1 tcp 38280 nlockmgr 100021 3 tcp 38280 nlockmgr 100021 4 tcp 38280 nlockmgr 使用exportfs查看本机上已经共享的目录: exportfs NFS客户端配置 NFS客户端:192.168.1.190 安装nfs,并启动服务。 yum install -y nfs-utils systemctl enable rpcbind.service systemctl start rpcbind.service 客户端不需要启动nfs服务,只需要启动rpcbind服务。 检查 NFS 服务器端是否有目录共享 showmount -e 192.168.1.180 挂载远程服务 mount -t nfs 192.168.1.180:/data/fileserver /data/itstyle 查看挂载 df -h 开机挂载,编辑/etc/fstab vim /etc/fstab 加入以下内容: # 设备文件 挂载点 文件系统类型 mount参数 dump参数 fsck顺序 192.168.1.180:/data/fileserver /data/itstyle nfs defaults,_netdev 0 0 _netdev明确说明这是网络文件系统,避免网络启动前挂载出现错误。 保存后,重新挂载 /etc/fstab 里面的内容。 mount -a 作者: 杨校 出处: https://blog.csdn.net/kese7952 分享是快乐的,也见证了个人成长历程,文章大多都是工作经验总结以及平时学习积累,基于自身认知不足之处在所难免,也请大家指正,共同进步。 本文版权归作者所有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出, 如有问题, 可邮件(397583050@qq.com)咨询。

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

杭电建新型教学实训平台,引入阿里云云效走进高校课堂

阿里云云效是阿里巴巴新近推出的基于 Work Like Allibaba 理念的一站式企业协同研发云平台,其源于阿里巴巴多年先进的管理理念和工程实践,提供从“需求->开发->测试->发布->运维->运营”端到端的协同服务和研发工具支撑。 阿里云云效不但可以助力广大企业高效提升研发效能与优化工作流程,在高校校园同样具有广泛的应用场景。 此次杭州电子科技大学计算机学院引入阿里云效,将就高校教学实践与研发协同工具的对接展开探索。阿里云效将为《软件过程与管理》、《WEB应用程序设计》、《WEB前端开发技术》等一系列课程的改革和运行提供全部平台资源和技术支持,并将基于试点成果在未来教育场景下展开更加全面和深入的探索。

资源下载

更多资源
腾讯云软件源

腾讯云软件源

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

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

用户登录
用户注册