首页 文章 精选 留言 我的

精选列表

搜索[Linux],共10000篇文章
优秀的个人博客,低调大师

《高性能Linux服务器构建实战》——2.1节初识Varnish

2.1 初识Varnish 2.1.1 Varnish概述Varnish是一款高性能且开源的反向代理服务器和HTTP 加速器,它的开发者Poul-Henning Kamp是FreeBSD核心的开发人员之一。Varnish采用全新的软件体系机构,和现在的硬件体系配合紧密。在1975年时,储存媒介只有两种:内存与硬盘。而现在计算机系统的内存除了主存外,还包括CPU内的L1、L2,有的还包括L3快取,硬盘上也有自己的快取装置,因此Squid Cache自行处理数据替换的架构不可能得知这些情况而做到最佳化,但操作系统可以得知这些情况,所以这部分工作应该交给操作系统处理,这就是 Varnish Cache设计架构。挪威最大的在线报纸 Verdens Gang(vg.no)使用3台Varnish代替了原来的12台Squid,性能比以前更好,这是

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

Linux存储入门:简易数据恢复方案--分区和LVM实战

数据恢复有没有简易方案? IT工程师一般都知道如何操作和使用文件和目录。但是,对于系统如何构建出、抽象出文件和目录,一般就不熟悉了。至于更下层的概念,可能大家知道最多的就是驱动了。所以,为了规避这点,可行的简易方案之一,就是以黑箱方式使用testdisk等工具,在我们在对底层了解不多甚至一无所知的情况下,进行数据恢复(商业工具,恢复效果估计更好,当然商业工具的价格也更好)。但是,对于工程师而言,多数时候,仅仅以黑箱方式依赖某些工具进行数据恢复是不够的。 数据恢复,经常是突发事故响应中关键而又耗时的一步。多数情况下,工程师往往并非专司数据恢复,操作环境往往是生产环境,趁手工具难以部署,执行操作要遵循种种约束,加之业务中断的压力。这种情形下,工程师很可能还需要推定数据恢复的结果/耗时等信息,提供数据供决策者使用。很明显,如果你准备考验一下

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

Linux上实现ssh免密码登陆远程服务器

0.说明 平常使用ssh登陆远程服务器时,都需要使用输入密码,希望可以实现通过密钥登陆而免除输入密码,从而可以为以后实现批量自动部署主机做好准备。 环境如下: IP地址 操作系统 服务器端 10.0.0.128/24 CentOS 6.5 x86 客户端 10.0.0.129/24 Ubuntu 16.04 x86 1.客户端生成密钥对 生成密钥对: xpleaf@leaf:~$ssh-keygen-trsa-b2048 Generatingpublic/privatersakeypair. Enterfileinwhichtosavethekey(/home/xpleaf/.ssh/id_rsa): Createddirectory'/home/xpleaf/.ssh'. Enterpassphrase(emptyfornopassphrase): Entersamepassphraseagain: Youridentificationhasbeensavedin/home/xpleaf/.ssh/id_rsa. Yourpublickeyhasbeensavedin/home/xpleaf/.ssh/id_rsa.pub. Thekeyfingerprintis: SHA256:eLssyXJLzUCfSN5mu6nqNH9dB/gOyXSvWBwQdNssIYExpleaf@leaf Thekey'srandomartp_w_picpathis: +---[RSA2048]----+ |o=oo| |E.o=| |oooo| |+=.o+.| |=So=+| |Bo+=o| |o...=.*o| |..+=..+oo| |.o++==| +----[SHA256]-----+ 查看生成的密钥对: xpleaf@leaf:~$ls.ssh id_rsaid_rsa.pub #id_rsa为私钥,这个一般需要保密;id_rsa.pub为公钥,这个可以公开。 2.上传公钥到服务器端 使用scp命令操作: xpleaf@leaf:~$scp.ssh/id_rsa.pubroot@10.0.0.128:/root Theauthenticityofhost'10.0.0.128(10.0.0.128)'can'tbeestablished. RSAkeyfingerprintisSHA256:0Tpm11wruaQXyvOfEB1maIkEwxmjT2AklWb198Vrln0. Areyousureyouwanttocontinueconnecting(yes/no)?yes Warning:Permanentlyadded'10.0.0.128'(RSA)tothelistofknownhosts. root@10.0.0.128'spassword: id_rsa.pub100%3930.4KB/s00:00 3.服务器端操作 把从客户端传来的公钥添加到.ssh/authorized_keys中: [root@leaf~]#catid_rsa.pub>>.ssh/authorized_keys [root@leaf~]#chmod600.ssh/authorized_keys #authorized_keys的权限需要为600 修改ssh配置文件/etc/ssh/sshd_config,找到下面一行: PubkeyAuthenticationno 修改为: PubkeyAuthenticationyes 4.测试 在客户端上使用密钥登陆到服务器上: xpleaf@leaf:~$ssh-i.ssh/id_rsaroot@10.0.0.128 Lastlogin:TueMay915:14:012017from10.0.0.129 [root@leaf~]# 5.注意事项 在服务器端需要把selinux关闭,否则最后无法使用密钥进行远程登陆; 客户端使用scp命令时,在服务器端也需要安装ssh客户端,否则无法把公钥上传到服务器端,另外也可以使用ssh-copy-id root@10.0.0.128来代替scp操作(这样在服务器端也不需要执行创建.ssh目录等这些操作,即相当于该命令可以一步帮我们完成密钥的上传与配置工作);

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

Linux命令:MySQL系列之八--MySQL事务相关内容

MySQL,ODBC 数据库事务 多事务同时执行:彼此之间互不影响的方式进行并行;事务之间交互,通过数据集。 START TRANSACTION; 启动事务命令 数据库只有启动了事务才允许回滚撤销等操作。 且数据的engine引擎必须是innodb,才支持事务 ROLLBACK回滚事务,mysql只要没有提交开启了事务都可以进行回滚操作。 COMMIT:事务提交,事务提交后无法进行回滚操作。 如果没有明确启动事务: autocommit能实现自动提交,每一个操作都直接提交; 所以建议:明确使用事务,否则所有操作都被当成一个事务来处理,并关闭自动提交。 否则会浪费mysql很多IO操作,每写一条语句都执行提交至持久性存储,很浪费资源 事务的特性: Atomicity:原子性,事务所引起的数据库操作,要不都完成,要么都不执行; Consistency: 一致性, Isolation:隔离性 事务调度:事务之间影响最小 MVCC:多版本并发控制 Durability:持久性 ,一旦事务成功完成,系统必须保证任何故障都不会引起事务表示出不一致性; 1、事务提交之前就已经写出数据至持久性存储; 2、结合事务日志完成; 事务日志:顺序IO 数据文件:随机IO 事务的状态: 活动的:active 部分提交的:最后一条语句执行后 失败的: 终止的: 提交的: 及状态间的转换过程: 事务并发执行的优势:1、提高吞吐量和资源利用率 2、减少等待时间 事务调度:1、可恢复调度 2、无极联调度 实例: mysql> SELECT @@AUTOCOMMIT; #查询自动提交的状态1为开启,0为关闭; +--------------+ | @@AUTOCOMMIT | +--------------+ | 1 | +--------------+ 1 row in set (0.00 sec) mysql> SET AUTOCOMMIT=0; #设定自动提交关闭 Query OK, 0 rows affected (0.00 sec) mysql> SELECT @@AUTOCOMMIT; #查询自动提交的状态1为开启,0为关闭; +--------------+ | @@AUTOCOMMIT | +--------------+ | 0 | +--------------+ 1 row in set (0.00 sec) mysql> DELETE FROM student WHERE Name LIKE 'Li%'; #删除Name字段包含Li的行 Query OK, 1 row affected (0.03 sec) mysql> SELECT * FROM student; #Li哪行已经被删除 +-----+------------+-----+-----+ | SID | Name | Age | CID | +-----+------------+-----+-----+ | 2 | Cheng Long | 0 | 2 | | 3 | Yang Guo | 0 | 3 | | 4 | Guo Jing | 0 | 4 | +-----+------------+-----+-----+ 3 rows in set (0.00 sec) mysql> ROLLBACK; #回滚事务,自动提交关闭后,默认就开启了事务,可以实现回滚等操作 Query OK, 0 rows affected (0.01 sec) mysql> SELECT * FROM student; #删除的哪行恢复了 +-----+------------+-----+-----+ | SID | Name | Age | CID | +-----+------------+-----+-----+ | 1 | Li Lianjie | 0 | 1 | | 2 | Cheng Long | 0 | 2 | | 3 | Yang Guo | 0 | 3 | | 4 | Guo Jing | 0 | 4 | +-----+------------+-----+-----+ 4 rows in set (0.00 sec) 保存点:恢复到所定义的那个保存点SAVEPOINT,保存点名称不能以数字开头。 保存点:SAVEPOINT savepoint_name; 保存以上操作为该保存点名称 回滚保存点:ROLLBACK TO savepoint_name; 回滚到该保存点之前的状态 Usage: mysql> START TRANSACTION; #启动事务 Query OK, 0 rows affected (0.00 sec) mysql> select * FROM student; +-----+------------+-----+-----+ | SID | Name | Age | CID | +-----+------------+-----+-----+ | 1 | Li Lianjie | 0 | 1 | | 2 | Cheng Long | 0 | 2 | | 3 | Yang Guo | 26 | 3 | | 4 | Guo Jing | 53 | 4 | +-----+------------+-----+-----+ 4 rows in set (0.00 sec) mysql>SAVEPOINT a; #该保存点student表数据都存在 Query OK, 0 rows affected (0.00 sec) mysql> select * FROM student; +-----+------------+-----+-----+ | SID | Name | Age | CID | +-----+------------+-----+-----+ | 1 | Li Lianjie | 0 | 1 | | 2 | Cheng Long | 0 | 2 | | 3 | Yang Guo | 26 | 3 | | 4 | Guo Jing | 53 | 4 | +-----+------------+-----+-----+ 4 rows in set (0.00 sec) mysql> DELETE FROM student WHERE SID=4; #删除student表的SID为4的行 Query OK, 1 row affected (0.00 sec) mysql> SELECT * FROM student; +-----+------------+-----+-----+ | SID | Name | Age | CID | +-----+------------+-----+-----+ | 1 | Li Lianjie | 0 | 1 | | 2 | Cheng Long | 0 | 2 | | 3 | Yang Guo | 26 | 3 | +-----+------------+-----+-----+ 3 rows in set (0.00 sec) mysql> SAVEPOINT b; #该保存点student表数据的SID为4的行不存在了 Query OK, 0 rows affected (0.00 sec) mysql> DELETE FROM student WHERE SID=3; Query OK, 1 row affected (0.00 sec) mysql> SELECT * FROM student; +-----+------------+-----+-----+ | SID | Name | Age | CID | +-----+------------+-----+-----+ | 1 | Li Lianjie | 0 | 1 | | 2 | Cheng Long | 0 | 2 | +-----+------------+-----+-----+ 2 rows in set (0.00 sec) mysql> SAVEPOINT c; #该保存点student表的SID为3和4的行都不存在 Query OK, 0 rows affected (0.00 sec) mysql> ROLLBACK TO b; #回滚至保存点b,即student表,SID为4的行不存在的行 Query OK, 0 rows affected (0.00 sec) mysql> SELECT * FROM student; +-----+------------+-----+-----+ | SID | Name | Age | CID | +-----+------------+-----+-----+ | 1 | Li Lianjie | 0 | 1 | | 2 | Cheng Long | 0 | 2 | | 3 | Yang Guo | 26 | 3 | +-----+------------+-----+-----+ 3 rows in set (0.00 sec) mysql> ROLLBACK TO a;#即所有数据都存在的那个点 Query OK, 0 rows affected (0.00 sec) mysql> SELECT * FROM student; +-----+------------+-----+-----+ | SID | Name | Age | CID | +-----+------------+-----+-----+ | 1 | Li Lianjie | 0 | 1 | | 2 | Cheng Long | 0 | 2 | | 3 | Yang Guo | 26 | 3 | | 4 | Guo Jing | 53 | 4 | +-----+------------+-----+-----+ 4 rows in set (0.00 sec)

资源下载

更多资源
Mario

Mario

马里奥是站在游戏界顶峰的超人气多面角色。马里奥靠吃蘑菇成长,特征是大鼻子、头戴帽子、身穿背带裤,还留着胡子。与他的双胞胎兄弟路易基一起,长年担任任天堂的招牌角色。

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应用均可从中受益。

Sublime Text

Sublime Text

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。