- 深入探究 Linux 系统的快照备份与恢复:TimeShift 实践与原理解析
运维の小LIAN
5.2其他-问题总结linux运维服务器备份
文章目录前言一、TimeShift的工作原理二、TimeShift的备份方式优缺点对比:三、TimeShift的安装和配置四、TimeShift的实际操作流程1.创建系统快照2.查看已创建的快照3.删除旧快照4.还原快照五、TimeShift快照操作步骤1.设置备份目标目录2.自定义备份和排除目录3.开始备份操作4.还原到指定快照5.测试TimeShift备份还原的效果1.备份前的系统状态2.安装
- ARM架构下安装新版docker及docker-compose
运维小弟| srebro.cn
docker架构docker容器
一、常见CPU架构:二、环境信息CPU架构操作系统配置HUAWEIKunpeng9205220aarch64openEuler22.03(LTS-SP3)64C128g15T三、安装docker3.1二进制包下载docker-ce社区下载地址:wgethttps://mirrors.nju.edu.cn/docker-ce/linux/static/stable/aarch64/docker-27
- 【过程记录】windows安装triton
靠才华吃土
过程记录pip
windows安装triton记录问题原因解决办法问题在执行pipinstalltriton=2.0.0的时候遇到报错:没有对应的版本原因triton只适用于Linux操作系统,对于Windows不适用,需要做相应的转换解决办法下载对应的.whl文件triton-2.0.0-cp310-cp310-win_amd64.whl地址:https://github.com/PrashantSaikia/
- Ubuntu32/64位arm/aarch64交叉编译总结
新潮技术研究社
linux开源项目百万案例之路生活有技术armarm开发嵌入式硬件交叉编译
交叉编译,做过Linux的同学应该都不陌生,经常见到的,就是,我的电脑上有一个VMwareUbuntu的虚拟机,然后在Ubuntu系统下,我要将程序移植到某个arm的板子上,就是放到板子上去运行,譬如,放到手机上运行,放到平板上运行,只不过有些平板的系统也是Ubuntu,不是所有的平板都是Android的嘛,还有苹果系统,华为系统,WinCE,无界面系统等等。这时候,有几种方式将程序放到目标设备上
- Docker部署minio-arm64版本,阿里官方推荐
m0_60721649
2024年程序员学习docker服务器阿里云
一、下载minio下载地址:https://dl.min.io/server/minio/release/linux-arm64/二、创建minio目录//启动目录mkdir/data/minio//bin//配置目录mkdir/data/minio/etc//数据mkdir/data/minio/data三、上传文件将下载好的minio文件到/usr/local/minio/bin目录下四、在目
- Docker部署minio-arm64版本
GSL_566
arm-docker部署docker容器运维
一、下载minio下载地址:https://dl.min.io/server/minio/release/linux-arm64/二、创建minio目录//启动目录mkdir/data/minio//bin//配置目录mkdir/data/minio/etc//数据mkdir/data/minio/data三、上传文件将下载好的minio文件到/usr/local/minio/bin目录下四、在目
- Node.js 安装及环境配置指南
ADFVBM
node.js
文章目录前言一、Node.js概述二、准备工作三、Node.js安装1.Windows系统2.macOS系统3.Linux系统四、环境配置五、常用命令和技巧六、常见问题及解决方案结语前言随着互联网技术的不断发展,JavaScript已经成为了一门全栈编程语言。Node.js的出现,使得JavaScript不仅可以用于浏览器端,还可以用于服务器端的开发。本文将为您提供一个保姆级的教程,详细介绍如何在
- Linux Shell脚本自动化编程实战【1.2 java python shell执行方式对比 】
wallacegen
linux自动化运维
lsecho$?lsxxxecho$?每一个命令都有一个返回值,如果执行成功,返回0,如果失败就返回非0ping114.114.114.114&&echo“success”ping114.114.114.114;echo“success”&&前面一个命令执行成功之后才能执行后面的命令;只是一个命令的排序,前后执行成功没有关系创建一个ping01.sh脚本文件#!/usr/bin/bashping-
- 关于Linux性能调优中系统CPU监测信息统计的一些笔记
山河已无恙
Linux笔记Linux性能调优linux运维性能调优cpu
写在前面博文内容部分参考于《Linux性能优化》中文版一书,学习后记录,感兴趣小伙伴可以支持下译者博文涉及内容:CPU相关的基础指标的解释:运行队列,平均负载,上下文切换,中断,CPU使用率CPU监控信息统计的常用工具中关于CPU信息的统计方式:vmstatmpstatsartop(3.0)人总是害怕去追求自己最重要的梦想,因为他们觉得自己不配拥有,或者觉得自己没有能力去完成。——保罗.柯艾略《牧
- 通过python对excel进行数据分析和可视化
新叶猫长那么可爱干什么
python的学习python
importpandasaspdimportmatplotlib.pyplotaspltimportseabornassnsfile_path="C:\\Users\\86138\\Desktop\\book_list-计算机-机器学习-linux-android-数据库-互联网.xlsx"data=pd.read_excel(file_path)need_data=data[['书名','评分'
- Python框架-Flask
flylr^
Pythonflaskpython后端
1.Flask介绍Flask作为主流的框架之一,是每个程序员必不可少掌握的,使用python语言基于Werkzeug工具箱编写的轻量级Web开发框架;本身相当于一个内核,其他几乎所有的功能都要用到扩展;核心在于Werkzeug(路由模块),Jinja2模板引擎。相比于django,flask比较轻,轻不代表它的功能不够强大,而是它拥有丰富的扩展,依赖于扩展给应用添加功能2.环境搭建1.安装Flas
- Linux 更换yum镜像源
絮落锦乡
linuxpython运维
报错信息Filecontainsnosectionheaders.file:file:///etc/yum.repos.d/CentOS-Base.repo,line:1'\r\n'[root@localhost~]#sudoyummakecache已加载插件:fastestmirror,langpacksFilecontainsnosectionheaders.file:file:///etc/
- docker中gitlab迁移
凌冽暖阳
dockerdockergitlab容器
一、备份1、首先查看docker中运行的容器,找到运行gitlab的容器idlinuxshell窗口中执行如下命令:dockerps2、进入docker容器dockerexec-i-t4d5e099d20af/bin/bash3、创建备份执行命令:gitlab-rakegitlab:backup:create备份完成后生成的文件:1669876030_2022_12_01_11.1.4_gitla
- 【Go】使用bufio包简单模拟实现linux的cat命令
Golinie
Golanggolang开发语言
最近刚好快把Go的文件输入输出过完了,实现个小demo,用bufio包模拟Unix/Linux系统中的cat命令,demo的主要功能是:通过命令行参数接收文件名,将指定文件的内容输出到标准输出。如果没有提供文件名参数,则从标准输入读取内容并输出。几个包的说明:bufio包提供了带缓冲的I/O操作,可以提高读写效率。flag包用于解析命令行参数。packagemainimport("bufio""f
- linux程序性能数据采集方案
杨铮的技术博客
linux开发网络开发方案设计
1背景因公司需要对开发的软件进行性能测试,需采集并记录测试过程中程序及系统的性能数据,包括cpu使用率、内存使用率、磁盘使用率等,方便开发人员对程序的性能表现进行分析。监控程序要求能够运行在x86或者Arm嵌入式平台上的linux系统,采集性能数据的程序须尽可能轻量化和可定制,于是个人利用工作之余设计本方案。为了使用者能够实时查看到监视目标的运行情况,方案选择C/S架构实现功能。性能采集服务运行在
- Linux 内核中的 InfiniBand 核心模块:drivers/infiniband/core/device.c 分析
109702008
#linux系统编程网络网络linux人工智能
InfiniBand是一种高性能、低延迟的网络互连技术,广泛应用于高性能计算(HPC)、数据中心和云计算等领域。Linux内核中的InfiniBand子系统提供了对InfiniBand设备的支持,而drivers/infiniband/core/device.c文件则是InfiniBand核心模块的重要组成部分。本文将对device.c文件的功能、数据结构、关键函数以及驱动核心入口进行详细分析。一
- Ubuntu系统开发环境搭建和常用软件
刘家旺1
各种各样的IT知识ubuntulinux运维
随着开源文化的普及,Linux操作系统逐渐受到广大开发者的青睐。其中,Ubuntu作为一款基于Debian的轻量级操作系统,以其易用性和稳定性赢得了众多用户的喜爱。本文将详细介绍如何在Ubuntu系统上搭建开发环境以及常用的软件推荐。一、Ubuntu系统安装与配置1.系统下载与安装访问Ubuntu官方网站(https://ubuntu.com/),根据个人需求选择合适的版本进行下载。下载完成后,制
- linux截图注释工具推荐
翻滚吧键盘
linux运维服务器
引言gnome的截图工具确实方便,也可以录屏,不过它缺少了截图后注释的功能,十分的不方便。本来我打算寻找有没有gnome插件可以完成这个功能,但是并没有找到,然后看到了这个ksnip工具。安装和使用安装sudoaptinstallksnip当然,可以通过快捷键进行调用参考https://github.com/ksnip/ksnip
- Mysql数据库介绍
2501_90241293
笔记
MySQL是一种开源的关系型数据库管理系统(RDBMS),常用于存储和管理结构化数据。它具有高性能、易用性和可靠性的特点,被广泛应用于网站、应用程序和各种数据密集型场景中。以下是MySQL的关键特点和基本概念:1.MySQL的特点•开源免费:MySQL是开源软件,可以免费使用,同时也有商业版本。•多平台支持:支持多种操作系统,包括Windows、Linux、macOS等。•高性能:MySQL适合高
- Linux 安装gitlab
絮落锦乡
linuxgitlab运维
1.更新系统确保系统是最新的:sudoyumupdate-y2.安装依赖项安装必需的依赖项:sudoyuminstall-ycurlpolicycoreutils-pythonopenssh-serverGitLab需要一个邮件服务来发送通知。你可以使用现有的邮件服务器,或者在本地配置Postfix:sudoyuminstall-ypostfixsudosystemctlenablepostfix
- IO与进线程
簏屿
1024程序员节linux
一、系统调用的概念OS负责管理和分配所有的计算机资源同时保护计算机硬件,为了更好地服务于应用程序,OS提供了一组特殊的接口,即系统调用。通过这组接口,用户程序可以使用OS内核提供的各种功能,如内存分配、进程创建、线程创建、进程间通信及线程间通信等。二、Linux文件类型拾遗Linux系统中,一切皆文件,操作设备时实际上是对文件进行操作。Linux文件类型:-:普通文件,linux中,如一般文件的文
- Linux 使用 GDB 进行调试的常用命令与技巧
打工人你好
Linux网络linux
GDB调试的常用命令与技巧1.GDB常用命令1.1安装GDB1.2启动GDB1.3设置程序的参数1.4设置断点1.5启动程序并运行至断点1.6执行一步1.7打印变量值1.8查看函数调用栈2.GDB调试Core文件2.1生成Core文件2.2使用GDB调试Core文件3.GDB调试正在运行的程序3.1附加到正在运行的进程3.2在进程中设置断点3.3恢复程序执行GDB(GNUDebugger)是一个功
- Linux 如何使用dd命令来复制和转换数据?
linux
简介Linux中的dd命令是一个功能强大的数据复制和转换实用程序。它以较低级别运行,通常用于创建可启动的USB驱动器、克隆磁盘和生成随机数据等任务。dd全称可以为:dataduplicator、diskdestroyer和DataDefinition功能和能力磁盘映像:创建整个磁盘或分区的精确、逐位副本数据擦除:使用零或随机数据安全地覆盖驱动器文件转换:ASCII和EBCDIC之间的转换、字节顺序
- Linux系统的数据库mysql启动时报错 Starting MySQL...[ERROR] The server quit without updating PID file的解决思路和方法
m0_74824044
数据库linuxmysql
目录一、问题二、问题分析(一)此类错误的常见排查方法1、检查MySQL配置文件2、检查权限问题3、检查系统资源4、查看系统日志5、检查MySQL错误日志6、重新启动MySQL服务7、手动启动MySQL服务8、检查PID文件9、修复权限10、检查MySQL版本兼容性11、使用MySQL内置命令(二)结合实际情况分析1、实情分析2、验证三、问题解决(一)停掉以前的mysql进程(二)重启mysql(三
- 【环境安装】安装LLaMA-Factory
BoostingIsm
环境安装深度学习人工智能
【机器背景说明】Linux-Centos7;显卡驱动:DriverVersion:460.106.00;TeslaP40*2【目标环境说明】torch==1.13.1+cu116llamafactory==0.9.2.dev01.CUDA11.6软件安装CUDA11.6软件有两种安装方式,一个是直接安装到Pip环境中、一种是下载到本地安装1.1在Pip环境里直接安装(推荐)此方法优点:省事不需要通
- Linux系统下C/C++编程
Zhang Wenhao
linuxlinuxc语言c++
参考视频Linux下C/CPP开发基础gcc库使用root@iZuf6ir9zx8jfk2vinfpllZ:~/cpp#vimmain.cpproot@iZuf6ir9zx8jfk2vinfpllZ:~/cpp#catmain.cpp#include#include"mymath.h"usingnamespacestd;intmain(){inta=10;intb=20;intc=add(a,b)
- Linux上的C/C++编程
遥逖
Linuxlinuxc语言c++
Linux上的C/C++编程yum软件包管理器Linux编辑器-vimvim命令模式指令集vim末行模式指令集gcc/g++的使用Linux自动化编译工具-make/MakefileLinux调试器-gdb调试命令多人合作工具gityum软件包管理器yum是Linux上常用的包管理器,类似于Windows上的“应用商店”。语法:yuminstall[选项]软件名下载安装软件包yumremove[选
- Arm64架构的Linux服务器安装tomcat并部署war包
木枫Free
服务器架构linuxtomcatarm运维
一、下载Tomcat打开浏览器,访问ApacheTomcat官方网站。在下载页面中,选择适合arm64架构的版本。一般来说,可以选择Tomcat的二进制发行版(BinaryDistributions)中的.tar.gz压缩包。我这里下载的是tomcat9二、安装Tomcat将下载的Tomcat压缩包上传到欧鹏操作系统的服务器上,或者使用命令行工具(如wget)直接下载到服务器上。解压Tomcat压
- ARM架构下的JDK 8安装包及部署指南:为您的开发环境加速
平稳炜
ARM架构下的JDK8安装包及部署指南:为您的开发环境加速项目地址:https://gitcode.com/open-source-toolkit/8c506项目介绍在ARM架构的设备上,如树莓派等,搭建Java开发环境可能是一项挑战。为了简化这一过程,我们推出了ARM架构专属的JDK8安装包及部署指南。本项目提供了一个关键的软件资源——jdk-8u391-linux-aarch64.tar,专门
- Python 打包成 EXE 的方法详解
小黄编程快乐屋
1024程序员节
#1024程序员节|征文#日常开发中,python由于其便捷性成为了很多人的首选语言,但是python的环境配置也是有点麻烦的,那么我们如何让其变得更加友好呢?没错,就是打包成exe可执行文件。一、PyInstaller简介PyInstaller是一个非常流行的Python工具,可以将Python脚本打包为独立的可执行文件。它支持Windows、macOS和Linux系统,特别适合需要跨平台打包的
- tomcat基础与部署发布
暗黑小菠萝
Tomcat java web
从51cto搬家了,以后会更新在这里方便自己查看。
做项目一直用tomcat,都是配置到eclipse中使用,这几天有时间整理一下使用心得,有一些自己配置遇到的细节问题。
Tomcat:一个Servlets和JSP页面的容器,以提供网站服务。
一、Tomcat安装
安装方式:①运行.exe安装包
&n
- 网站架构发展的过程
ayaoxinchao
数据库应用服务器网站架构
1.初始阶段网站架构:应用程序、数据库、文件等资源在同一个服务器上
2.应用服务和数据服务分离:应用服务器、数据库服务器、文件服务器
3.使用缓存改善网站性能:为应用服务器提供本地缓存,但受限于应用服务器的内存容量,可以使用专门的缓存服务器,提供分布式缓存服务器架构
4.使用应用服务器集群改善网站的并发处理能力:使用负载均衡调度服务器,将来自客户端浏览器的访问请求分发到应用服务器集群中的任何
- [信息与安全]数据库的备份问题
comsci
数据库
如果你们建设的信息系统是采用中心-分支的模式,那么这里有一个问题
如果你的数据来自中心数据库,那么中心数据库如果出现故障,你的分支机构的数据如何保证安全呢?
是否应该在这种信息系统结构的基础上进行改造,容许分支机构的信息系统也备份一个中心数据库的文件呢?
&n
- 使用maven tomcat plugin插件debug关联源代码
商人shang
mavendebug查看源码tomcat-plugin
*首先需要配置好'''maven-tomcat7-plugin''',参见[[Maven开发Web项目]]的'''Tomcat'''部分。
*配置好后,在[[Eclipse]]中打开'''Debug Configurations'''界面,在'''Maven Build'''项下新建当前工程的调试。在'''Main'''选项卡中点击'''Browse Workspace...'''选择需要开发的
- 大访问量高并发
oloz
大访问量高并发
大访问量高并发的网站主要压力还是在于数据库的操作上,尽量避免频繁的请求数据库。下面简
要列出几点解决方案:
01、优化你的代码和查询语句,合理使用索引
02、使用缓存技术例如memcache、ecache将不经常变化的数据放入缓存之中
03、采用服务器集群、负载均衡分担大访问量高并发压力
04、数据读写分离
05、合理选用框架,合理架构(推荐分布式架构)。
- cache 服务器
小猪猪08
cache
Cache 即高速缓存.那么cache是怎么样提高系统性能与运行速度呢?是不是在任何情况下用cache都能提高性能?是不是cache用的越多就越好呢?我在近期开发的项目中有所体会,写下来当作总结也希望能跟大家一起探讨探讨,有错误的地方希望大家批评指正。
1.Cache 是怎么样工作的?
Cache 是分配在服务器上
- mysql存储过程
香水浓
mysql
Description:插入大量测试数据
use xmpl;
drop procedure if exists mockup_test_data_sp;
create procedure mockup_test_data_sp(
in number_of_records int
)
begin
declare cnt int;
declare name varch
- CSS的class、id、css文件名的常用命名规则
agevs
JavaScriptUI框架Ajaxcss
CSS的class、id、css文件名的常用命名规则
(一)常用的CSS命名规则
头:header
内容:content/container
尾:footer
导航:nav
侧栏:sidebar
栏目:column
页面外围控制整体布局宽度:wrapper
左右中:left right
- 全局数据源
AILIKES
javatomcatmysqljdbcJNDI
实验目的:为了研究两个项目同时访问一个全局数据源的时候是创建了一个数据源对象,还是创建了两个数据源对象。
1:将diuid和mysql驱动包(druid-1.0.2.jar和mysql-connector-java-5.1.15.jar)copy至%TOMCAT_HOME%/lib下;2:配置数据源,将JNDI在%TOMCAT_HOME%/conf/context.xml中配置好,格式如下:&l
- MYSQL的随机查询的实现方法
baalwolf
mysql
MYSQL的随机抽取实现方法。举个例子,要从tablename表中随机提取一条记录,大家一般的写法就是:SELECT * FROM tablename ORDER BY RAND() LIMIT 1。但是,后来我查了一下MYSQL的官方手册,里面针对RAND()的提示大概意思就是,在ORDER BY从句里面不能使用RAND()函数,因为这样会导致数据列被多次扫描。但是在MYSQL 3.23版本中,
- JAVA的getBytes()方法
bijian1013
javaeclipseunixOS
在Java中,String的getBytes()方法是得到一个操作系统默认的编码格式的字节数组。这个表示在不同OS下,返回的东西不一样!
String.getBytes(String decode)方法会根据指定的decode编码返回某字符串在该编码下的byte数组表示,如:
byte[] b_gbk = "
- AngularJS中操作Cookies
bijian1013
JavaScriptAngularJSCookies
如果你的应用足够大、足够复杂,那么你很快就会遇到这样一咱种情况:你需要在客户端存储一些状态信息,这些状态信息是跨session(会话)的。你可能还记得利用document.cookie接口直接操作纯文本cookie的痛苦经历。
幸运的是,这种方式已经一去不复返了,在所有现代浏览器中几乎
- [Maven学习笔记五]Maven聚合和继承特性
bit1129
maven
Maven聚合
在实际的项目中,一个项目通常会划分为多个模块,为了说明问题,以用户登陆这个小web应用为例。通常一个web应用分为三个模块:
1. 模型和数据持久化层user-core,
2. 业务逻辑层user-service以
3. web展现层user-web,
user-service依赖于user-core
user-web依赖于user-core和use
- 【JVM七】JVM知识点总结
bit1129
jvm
1. JVM运行模式
1.1 JVM运行时分为-server和-client两种模式,在32位机器上只有client模式的JVM。通常,64位的JVM默认都是使用server模式,因为server模式的JVM虽然启动慢点,但是,在运行过程,JVM会尽可能的进行优化
1.2 JVM分为三种字节码解释执行方式:mixed mode, interpret mode以及compiler
- linux下查看nginx、apache、mysql、php的编译参数
ronin47
在linux平台下的应用,最流行的莫过于nginx、apache、mysql、php几个。而这几个常用的应用,在手工编译完以后,在其他一些情况下(如:新增模块),往往想要查看当初都使用了那些参数进行的编译。这时候就可以利用以下方法查看。
1、nginx
[root@361way ~]# /App/nginx/sbin/nginx -V
nginx: nginx version: nginx/
- unity中运用Resources.Load的方法?
brotherlamp
unity视频unity资料unity自学unityunity教程
问:unity中运用Resources.Load的方法?
答:Resources.Load是unity本地动态加载资本所用的方法,也即是你想动态加载的时分才用到它,比方枪弹,特效,某些实时替换的图像什么的,主张此文件夹不要放太多东西,在打包的时分,它会独自把里边的一切东西都会集打包到一同,不论里边有没有你用的东西,所以大多数资本应该是自个建文件放置
1、unity实时替换的物体即是依据环境条件
- 线段树-入门
bylijinnan
java算法线段树
/**
* 线段树入门
* 问题:已知线段[2,5] [4,6] [0,7];求点2,4,7分别出现了多少次
* 以下代码建立的线段树用链表来保存,且树的叶子结点类似[i,i]
*
* 参考链接:http://hi.baidu.com/semluhiigubbqvq/item/be736a33a8864789f4e4ad18
* @author lijinna
- 全选与反选
chicony
全选
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>全选与反选</title>
- vim一些简单记录
chenchao051
vim
mac在/usr/share/vim/vimrc linux在/etc/vimrc
1、问:后退键不能删除数据,不能往后退怎么办?
答:在vimrc中加入set backspace=2
2、问:如何控制tab键的缩进?
答:在vimrc中加入set tabstop=4 (任何
- Sublime Text 快捷键
daizj
快捷键sublime
[size=large][/size]Sublime Text快捷键:Ctrl+Shift+P:打开命令面板Ctrl+P:搜索项目中的文件Ctrl+G:跳转到第几行Ctrl+W:关闭当前打开文件Ctrl+Shift+W:关闭所有打开文件Ctrl+Shift+V:粘贴并格式化Ctrl+D:选择单词,重复可增加选择下一个相同的单词Ctrl+L:选择行,重复可依次增加选择下一行Ctrl+Shift+L:
- php 引用(&)详解
dcj3sjt126com
PHP
在PHP 中引用的意思是:不同的名字访问同一个变量内容. 与C语言中的指针是有差别的.C语言中的指针里面存储的是变量的内容在内存中存放的地址 变量的引用 PHP 的引用允许你用两个变量来指向同一个内容 复制代码代码如下:
<?
$a="ABC";
$b =&$a;
echo
- SVN中trunk,branches,tags用法详解
dcj3sjt126com
SVN
Subversion有一个很标准的目录结构,是这样的。比如项目是proj,svn地址为svn://proj/,那么标准的svn布局是svn://proj/|+-trunk+-branches+-tags这是一个标准的布局,trunk为主开发目录,branches为分支开发目录,tags为tag存档目录(不允许修改)。但是具体这几个目录应该如何使用,svn并没有明确的规范,更多的还是用户自己的习惯。
- 对软件设计的思考
e200702084
设计模式数据结构算法ssh活动
软件设计的宏观与微观
软件开发是一种高智商的开发活动。一个优秀的软件设计人员不仅要从宏观上把握软件之间的开发,也要从微观上把握软件之间的开发。宏观上,可以应用面向对象设计,采用流行的SSH架构,采用web层,业务逻辑层,持久层分层架构。采用设计模式提供系统的健壮性和可维护性。微观上,对于一个类,甚至方法的调用,从计算机的角度模拟程序的运行情况。了解内存分配,参数传
- 同步、异步、阻塞、非阻塞
geeksun
非阻塞
同步、异步、阻塞、非阻塞这几个概念有时有点混淆,在此文试图解释一下。
同步:发出方法调用后,当没有返回结果,当前线程会一直在等待(阻塞)状态。
场景:打电话,营业厅窗口办业务、B/S架构的http请求-响应模式。
异步:方法调用后不立即返回结果,调用结果通过状态、通知或回调通知方法调用者或接收者。异步方法调用后,当前线程不会阻塞,会继续执行其他任务。
实现:
- Reverse SSH Tunnel 反向打洞實錄
hongtoushizi
ssh
實際的操作步驟:
# 首先,在客戶那理的機器下指令連回我們自己的 Server,並設定自己 Server 上的 12345 port 會對應到幾器上的 SSH port
ssh -NfR 12345:localhost:22
[email protected]
# 然後在 myhost 的機器上連自己的 12345 port,就可以連回在客戶那的機器
ssh localhost -p 1
- Hibernate中的缓存
Josh_Persistence
一级缓存Hiberante缓存查询缓存二级缓存
Hibernate中的缓存
一、Hiberante中常见的三大缓存:一级缓存,二级缓存和查询缓存。
Hibernate中提供了两级Cache,第一级别的缓存是Session级别的缓存,它是属于事务范围的缓存。这一级别的缓存是由hibernate管理的,一般情况下无需进行干预;第二级别的缓存是SessionFactory级别的缓存,它是属于进程范围或群集范围的缓存。这一级别的缓存
- 对象关系行为模式之延迟加载
home198979
PHP架构延迟加载
形象化设计模式实战 HELLO!架构
一、概念
Lazy Load:一个对象,它虽然不包含所需要的所有数据,但是知道怎么获取这些数据。
延迟加载貌似很简单,就是在数据需要时再从数据库获取,减少数据库的消耗。但这其中还是有不少技巧的。
二、实现延迟加载
实现Lazy Load主要有四种方法:延迟初始化、虚
- xml 验证
pengfeicao521
xmlxml解析
有些字符,xml不能识别,用jdom或者dom4j解析的时候就报错
public static void testPattern() {
// 含有非法字符的串
String str = "Jamey친ÑԂ
- div设置半透明效果
spjich
css半透明
为div设置如下样式:
div{filter:alpha(Opacity=80);-moz-opacity:0.5;opacity: 0.5;}
说明:
1、filter:对win IE设置半透明滤镜效果,filter:alpha(Opacity=80)代表该对象80%半透明,火狐浏览器不认2、-moz-opaci
- 你真的了解单例模式么?
w574240966
java单例设计模式jvm
单例模式,很多初学者认为单例模式很简单,并且认为自己已经掌握了这种设计模式。但事实上,你真的了解单例模式了么。
一,单例模式的5中写法。(回字的四种写法,哈哈。)
1,懒汉式
(1)线程不安全的懒汉式
public cla