- C++内存管理
C语言动态内存管理方式C语言中动态内存管理方式:malloc/calloc/realloc/free。C++中动态内存管理方式C++提出了自己的内存管理方式:通过new和delete操作符进行动态内存管理。例如:对于内置类型voidTest(){//动态申请一个int类型的空间int*ptr4=newint;//动态申请一个int类型的空间并初始化为10int*ptr5=newint(10);//
- 分布式ID设计方案详解:从理论到实践
一、为什么需要分布式ID?在分布式系统中,唯一ID的生成面临两大核心挑战:全局唯一性:避免跨节点、跨数据中心的ID冲突。有序性:确保ID按时间或业务规则递增,提升数据库写入性能(如InnoDB的B+树索引)。传统单机自增ID(如MySQLAUTO_INCREMENT)无法满足分库分表、高并发等场景需求,因此需引入分布式ID方案。二、主流分布式ID方案对比方案优点缺点适用场景UUID简单、无中心化依
- MySQL与SQLite区别
GoKu~
mysqlsqlite
MySQL和SQLite都是关系型数据库管理系统(RDBMS),它们都使用SQL(结构化查询语言)作为标准查询语言。然而,尽管它们共享许多共同点,但它们在语法、功能、性能和存储机制方面存在一些差异。以下是一些主要的差异:1.存储引擎:-MySQL:支持多种存储引擎,如InnoDB、MyISAM、Memory等,每种存储引擎都有不同的特性,如事务支持、索引类型、数据存储方式等。-SQLite:只有一
- Linux内存管理和寻址详解
*烟雨
linux驱动开发网络
1.概念内存管理模式段式:内存分为了多段,每段都是连续的内存,不同的段对应不用的用途。每个段的大小都不是统一的,会导致内存碎片和内存交换效率低的问题。页式:内存划分为多个内存页进行管理,如在Linux系统中,每一页的大小为4KB。由于分了页后,就不会产生细小的内存碎片。但是仍然也存在内存碎片问题。段页式:段式和页式结合。地址类型划分逻辑地址:程序所使用的地址,通常是没被段式内存管理映射的地址,称为
- 了解GC吗?什么是GC?
后端java
GC是什么?为什么要GC?GC(GarbageCollection),垃圾回收,是Java与C++的主要区别之一。作为Java开发者,一般不需要专门编写内存回收和垃圾清理代码。这是因为在Java虚拟机中,存在自动内存管理和垃圾清理机制。对JVM中的内存进行标记,并确定哪些内存需要回收,根据一定的回收策略,自动的回收内存,保证JVM中的内存空间,防止出现内存泄露和溢出问题。GC是任意时候都能进行的吗
- 数据库的后悔药:Undo Log揭秘
你一身傲骨怎能输
游戏行业领域知识专栏撤销日志(UndoLog)
文章摘要撤销日志(UndoLog)是数据库的“后悔药”机制,用于保证数据操作的原子性和一致性。其核心原理是修改数据前先记录原始状态到UndoLog,若事务失败则进行回滚恢复。典型应用包括:1)事务回滚(如转账异常时还原数据);2)并发控制(通过快照读提供多版本视图)。主流数据库如MySQLInnoDB和Oracle均采用该技术,其流程可概括为“先备份后修改,出错即还原”。简言之,UndoLog通过
- 【Python】memory_profiler
宅男很神经
python开发语言
1.1引用计数与垃圾回收:Python的“贴身管家”与“清洁工”Python,特别是其标准实现CPython,其内存管理的核心是建立在一个优雅而高效的组合机制之上的:以引用计数为主,分代垃圾回收为辅。1.引用计数(ReferenceCounting):主要的内存管家这是CPython内存管理的基石。其原理极其简单:CPython中的每一个对象(一个整数、一个列表、一个自定义类的实例),其内部都维护
- Java面试八股文(2023最新)--Linux面试题
月月崽
面试linux运维服务器
目录1.什么是Linux内核2.Linux的体系结构.4.基本命令5.如何查看最近1000行日志6.如何查端口号是否被占用7.查看当前所有已经使用的端口情况8.什么是硬链接和软链接?1.什么是Linux内核Linux系统的核心是内核,内核控制着计算机系统上的软硬件,在必要时分配硬件,并根据需要执行软件.系统内存管理应用程序管理硬件设备管理文件系统管理2.Linux的体系结构.Linux体系结构可以
- MySQL 八股文【持续更新ing】
小明铭同学
MySQLmysql数据库
MySQL八股文【持续更新ing】文章目录MySQL八股文【持续更新ing】前言一、MySQL的存储引擎有哪些?他们之间有什么区别?二、MySQL`InnoDB引擎中`的聚簇索引和非聚簇索引有什么区别?1.InnoDB中的聚簇索引2.InnoDB中的非聚簇索引三、MySQL的索引类型有哪些?四、为什么MySQL选择使用B+树作为索引结构?五、MySQL索引的最左匹配原则是什么?六、MySQL三层B
- 请详细描述MySQL的B+树中查询数据的全过程
WhiskyMaster
mysqlb树数据库
在MySQL中,B+树是一种常用的索引结构,尤其是在InnoDB存储引擎中,B+树被广泛应用于聚集索引(ClusteredIndex)和非聚集索引(SecondaryIndex)。在B+树中,数据存储在叶子节点,非叶子节点用于路由和索引查找。查询过程是通过树结构逐步定位到正确的数据位置。以下是MySQLB+树中查询数据的详细过程:B+树的基本结构非叶子节点:非叶子节点存储的是指向子节点的指针(即键
- 11 DPDK 探索 大页内存原理
在分析dpdk大页内存的源码之前,有必要对linux内存管理的原理以及大页内存的原理有个了解,缺少这些底层基础知识,分析dpdk大页内存的源码将举步维艰。这篇文章详细介绍下linux内存管理以及大页内存的方方面面,为分析dpdk大页内存源码扫除障碍。一、linux内存管理原理1、mmu内存管理的引入在没有引入mmu内存管理单元时,对于32位操作系统,每个进程都有2的32次方的地址空间(4G)。如果
- 深度剖析:OPENPPP2 libtcpip 实现原理与架构设计
liulilittle
网络智能路由器c++开发语言tcptcp/ip通信
️一、核心架构设计(可视化图表)1.1整体架构图物理网络TAP/TUN设备原始数据包libtcpip输入层LWIP协议栈Netstack转换层Boost.AsioSocket目标服务libtcpip输出层1.2分层架构图内核空间用户空间内核网络栈IP协议处理网络接口层TCP/UDP协议栈Socket转换层系统Socket接口物理网络⚙️二、LWIP协议栈集成剖析2.1LWIP定制化实现//内存管理
- 【C++ 内存管理】静态分配和动态分配
【C++内存管理】静态分配和动态分配_静态分配内存和动态分配内存-CSDN博客1.静态分配定义:在编译阶段确定内存大小和生命周期,由编译器自动分配和释放。特点:①分配时机:程序启动时分配,程序结束时释放。②内存区域:数据段(全局变量或者静态变量)和栈区。③生命周期:与程序或模块的执行周期一致。④大小固定:内存大小在编译时已知,不可动态调整。⑤无需手动管理:由编译器自动释放。2.动态分配定义:在程序
- React + PDF.js 预览 PDF 文件:从基础实现到高级优化的完整指南
EndingCoder
前端开发javascriptreact.jspdf前端前端框架
关键点PDF.js:Mozilla开发的开源JavaScript库,用于在浏览器中渲染PDF文件。React集成:结合React组件化特性,实现高效、交互式的PDF预览功能。功能实现:支持PDF文件加载、页面导航、缩放、搜索、书签和注释。优化策略:包括性能优化(懒加载、缓存)、可访问性和手机端适配。常见问题:处理大文件加载、跨浏览器兼容性和内存管理。实践场景:通过一个文档管理应用,展示PDF.js
- Redis性能优化指南
Redis的性能优化需要从内存管理、配置参数调优、客户端行为优化三个核心层面入手,结合业务场景平衡吞吐量、延迟和资源消耗。以下是具体优化策略:一、内存管理与压缩技术1.内存优化策略选择高效数据结构:优先使用Hash(存储对象)替代多个String(减少Key数量)。每一份对立的数据都有一个对应的key需要存储一份元数据(如类型、过期时间、指针等)。使用Ziplist编码的小型数据(如hash-ma
- 从小白到进阶:解锁linux与c语言高级编程知识点嵌入式开发的任督二脉(3)
small_wh1te_coder
c嵌入式linuxc语言汇编c++嵌入式硬件面试
【硬核揭秘】Linux与C高级编程:从入门到精通,你的全栈之路!第五部分:C语言高级编程——结构体、共用体、枚举、内存管理、GDB调试、Makefile全解析嘿,各位C语言的“卷王”们!在前面的旅程中,我们深入探索了Linux的奥秘,从命令行操作到Shell脚本编程,再到网络文件服务,你的Linux技能已经突飞猛进。现在,是时候回到我们的“老本行”——C语言了!你可能已经能够编写各种简单的C程序,
- DPDK 网卡驱动
唯独不开心
DPDK开发语言
DPDK里的PMDs负责处理网络数据包与内存之间的数据交互。而接下来提到的UIO和VFIO是两种不同的驱动方式,允许DPDK绕过内核网络栈,直接在用户空间高效地访问硬件设备。这部分内容会围绕使用这两种驱动的PMDs展开,可能会涉及到它们的配置、使用场景、性能特点等方面。新名词IOMMU(Input-OutputMemoryManagementUnit,输入输出内存管理单元)定义:IOMMU(Inp
- MMORPG无loading条大世界技术揭秘
你一身傲骨怎能输
游戏开发技术专栏mmorpg
文章摘要现代MMORPG游戏实现无loading条大世界的核心技术包括:分区流式加载、异步多线程处理、LOD渐进式资源加载、智能内存管理等。主流方案将地图划分为可独立加载的区块,通过异步IO和优先级队列动态管理资源,结合预取机制和资源降级确保流畅体验。典型案例如《原神》《魔兽世界》等采用混合加载模式,核心场景预加载,外围区域动态加载。这些技术虽提升了游戏体验,但也对资源组织和内存管理提出了更高要求
- 深度解析:轻量级CLR/JIT即时编译系统设计与实现(一)
liulilittle
MarkdownExtensionC#c#clrjvmjitx86汇编编译器
深度解析:轻量级CLR/JIT即时编译系统设计与实现引用:liulilittle/SimpleClr️系统架构全景图核心组件指令调度器JIT编译器寄存器分配器X86机器码生成器分支回填器内存保护器内存管理器IL指令集可执行代码区委托调用器执行结果一、系统架构深度解析️1.1核心组件交互关系后端执行JIT引擎前端IL指令流编译请求机器码输出可执行内存执行结果接口实现委托调用builtins_x86.
- 聊聊JVM如何优化
首先应该明确的是JVM调优不是常规手段,JVM的存在本身就是为了减轻开发对于内存管理的负担,当出现性能问题的时候第一时间考虑的是代码逻辑与设计方案,以及是否达到依赖中间件的瓶颈,最后才是针对JVM进行优化。1.JVM内存模型针对JAVA8的模型进行讨论,JVM的内存模型主要分为几个关键区域:堆、方法区、程序计数器、虚拟机栈和本地方法栈。堆内存进一步细分为年轻代、老年代,年轻代按其特性又分为E区,S
- MySQL · 特性分析 ·MySQL 5.7新特性系列
挑战者666888
mysqlmysqladb后端
文章目录1.背景2.我们先大致看下InnoDB的undo在不同的版本上的一些演进:3.MySQL5.7的版本上3.1接下来我们详细看下5.7的InnoDBundo的管理:3.1.1undo表空间创建3.1.2rollbacksegment的分配如下:3.1.3InnoDBundo的空间管理简图如下:undo空间管理1.rsegslot2.rsegheader3.undosegmentheaderu
- 移动开发:WebView的性能优化工具推荐与使用
移动开发:WebView的性能优化工具推荐与使用关键词:WebView、性能优化、移动开发、渲染性能、内存管理、调试工具、缓存策略摘要:本文深入探讨移动开发中WebView的性能优化策略和工具。我们将从WebView的核心原理出发,分析其性能瓶颈,介绍一系列实用的性能优化工具和技术,包括ChromeDevTools、AndroidProfiler、Systrace等。文章还将提供详细的代码示例和优
- 深入剖析MYSQL MVCC多版本并发控制+ReadView视图快照规避幻读问题
LiRuiJie
MySQLmysql数据库
一、剖析MVCC底层如何实现1.MVCC的目标在高并发场景下,MVCC实现:能力描述读写并发读不会阻塞写,写也不会阻塞读(大多数SELECT是非阻塞的)一致性视图每个事务看到的数据是其开始时的一致状态高性能避免频繁加锁,减少锁竞争开销2.InnoDB如何实现MVCCInnoDB使用以下两部分实现MVCC:UndoLog(撤销日志):用于保存数据变更前的旧版本ReadView(读视图):用于判断当前
- Mysql存储引擎
对于一张mysql的表,需要存储表结构、数据和索引,存储引擎直接影响上面内容的存储方式mysql主要存储引擎包括:MyISAM和InnoDBMyISAM引擎不支持事务和外键、索引采用非聚簇索引,优势在于访问速度块对事务没有完整性要求,以select、insert为主的应用基本可以用这个引擎创建表。MyISAM表在磁盘上存储成3个文件,其文件名和表名相同,扩展名分别是:.frm(存储表定义).MYD
- C++ 池式内存管理:避免频繁内存分配与碎片化
海派程序猿
c++javajvm
C++内存池:像个老农一样精打细算各位看官,今天咱们聊聊C++里一个挺有意思的话题:内存池。内存管理这事儿,听起来就头大,但它就像你家的厨房,收拾得井井有条,做饭才能得心应手。咱们程序员的厨房,就是内存。如果内存管理乱七八糟,那程序跑起来,轻则卡顿,重则崩溃,就像炒菜忘了放盐,味道总是不对劲。C++里,new和delete是我们分配和释放内存的常用工具。它们就像两个勤劳的小蜜蜂,帮你从系统里申请和
- 数据库锁等待时间过长问题的深度解析与大数据解决方案
百态老人
数据库大数据
一、锁等待问题的核心原因与日志特征锁等待超时是数据库高并发场景下的典型瓶颈问题,其根本原因与日志特征可归纳为以下维度:事务管理缺陷原因:未提交的长事务(如代码分支遗漏提交)、隐式事务(自动提交关闭)导致锁持有时间过长。日志特征:information_schema.innodb_trx表中存在trx_started时间早于当前时间数分钟的事务。错误日志中频繁出现Lockwaittimeoutexc
- Linux内核支持几级页表,Linux内核4级页表的演进(转)
写剧本的
Linux内核支持几级页表
Linux内存管理中coreVM代码中,关于页表(pagetables)管理的代码是个重点,是虚拟内存(VirtualMemory,VM)的基石,本文探讨Linux的页表实现及发展过程。页表概览在虚拟内存中,页表是个映射表的概念,即从进程能理解的线性地址(linearaddress)映射到存储器上的物理地址(phisicaladdress)。很显然,这个页表是需要常驻内存的东西,以应对频繁的查询映
- 【八股学习】MySQL——三大日志、索引
illus10n_CHOU
八股学习mysql数据库
首先,三大日志分别是:redolog、binlog、undolog重点也就是如下部分:每个日志的作用、刷盘时机日志redolog作用让MySQL拥有了崩溃恢复能力。比如MySQL实例挂了或宕机了,重启时,InnoDB存储引擎会使用redolog恢复数据,保证数据的持久性与完整性。刷盘时机在查询时,InnoDB会将数据页读入BufferPool以便后续查找,减少磁盘IO。同理,更新数据时,Buffe
- MyISAM和InnoDB的区别分析
咖啡啡不加糖
javamysql数据库
对于每一位Java开发者而言,MySQL无疑是我们最亲密的伙伴之一。而在使用MySQL时,我们常常会遇到一个经典问题:存储引擎该如何选择?其中,MyISAM和InnoDB作为两大最主流的存储引擎,它们之间的区别与联系,关乎数据库设计与性能优化的关键所在。1.核心区别概览在深入细节之前,我们先通过一个表格,宏观地了解MyISAM与InnoDB的核心区别。特性MyISAMInnoDB事务支持不支持支持
- STL 6分配器
随意023
C++重构c++开发语言
1.分配器1.分配器的核心功能1.内存分配:替代operatornew和operatordelete,提供自定义内存管理。2.对象构造/析构:分离内存分配与对象构造(通过construct和destroy方法)。3.类型抽象:使容器与具体内存管理解耦,支持不同的内存策略。1.标准库中的默认分配器所有STL容器默认使用std::allocator,它是一个简单的包装,直接调用operatornew和
- jQuery 跨域访问的三种方式 No 'Access-Control-Allow-Origin' header is present on the reque
qiaolevip
每天进步一点点学习永无止境跨域众观千象
XMLHttpRequest cannot load http://v.xxx.com. No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://localhost:63342' is therefore not allowed access. test.html:1
- mysql 分区查询优化
annan211
java分区优化mysql
分区查询优化
引入分区可以给查询带来一定的优势,但同时也会引入一些bug.
分区最大的优点就是优化器可以根据分区函数来过滤掉一些分区,通过分区过滤可以让查询扫描更少的数据。
所以,对于访问分区表来说,很重要的一点是要在where 条件中带入分区,让优化器过滤掉无需访问的分区。
可以通过查看explain执行计划,是否携带 partitions
- MYSQL存储过程中使用游标
chicony
Mysql存储过程
DELIMITER $$
DROP PROCEDURE IF EXISTS getUserInfo $$
CREATE PROCEDURE getUserInfo(in date_day datetime)-- -- 实例-- 存储过程名为:getUserInfo-- 参数为:date_day日期格式:2008-03-08-- BEGINdecla
- mysql 和 sqlite 区别
Array_06
sqlite
转载:
http://www.cnblogs.com/ygm900/p/3460663.html
mysql 和 sqlite 区别
SQLITE是单机数据库。功能简约,小型化,追求最大磁盘效率
MYSQL是完善的服务器数据库。功能全面,综合化,追求最大并发效率
MYSQL、Sybase、Oracle等这些都是试用于服务器数据量大功能多需要安装,例如网站访问量比较大的。而sq
- pinyin4j使用
oloz
pinyin4j
首先需要pinyin4j的jar包支持;jar包已上传至附件内
方法一:把汉字转换为拼音;例如:编程转换后则为biancheng
/**
* 将汉字转换为全拼
* @param src 你的需要转换的汉字
* @param isUPPERCASE 是否转换为大写的拼音; true:转换为大写;fal
- 微博发送私信
随意而生
微博
在前面文章中说了如和获取登陆时候所需要的cookie,现在只要拿到最后登陆所需要的cookie,然后抓包分析一下微博私信发送界面
http://weibo.com/message/history?uid=****&name=****
可以发现其发送提交的Post请求和其中的数据,
让后用程序模拟发送POST请求中的数据,带着cookie发送到私信的接入口,就可以实现发私信的功能了。
- jsp
香水浓
jsp
JSP初始化
容器载入JSP文件后,它会在为请求提供任何服务前调用jspInit()方法。如果您需要执行自定义的JSP初始化任务,复写jspInit()方法就行了
JSP执行
这一阶段描述了JSP生命周期中一切与请求相关的交互行为,直到被销毁。
当JSP网页完成初始化后
- 在 Windows 上安装 SVN Subversion 服务端
AdyZhang
SVN
在 Windows 上安装 SVN Subversion 服务端2009-09-16高宏伟哈尔滨市道里区通达街291号
最佳阅读效果请访问原地址:http://blog.donews.com/dukejoe/archive/2009/09/16/1560917.aspx
现在的Subversion已经足够稳定,而且已经进入了它的黄金时段。我们看到大量的项目都在使
- android开发中如何使用 alertDialog从listView中删除数据?
aijuans
android
我现在使用listView展示了很多的配置信息,我现在想在点击其中一条的时候填出 alertDialog,点击确认后就删除该条数据,( ArrayAdapter ,ArrayList,listView 全部删除),我知道在 下面的onItemLongClick 方法中 参数 arg2 是选中的序号,但是我不知道如何继续处理下去 1 2 3
- jdk-6u26-linux-x64.bin 安装
baalwolf
linux
1.上传安装文件(jdk-6u26-linux-x64.bin)
2.修改权限
[root@localhost ~]# ls -l /usr/local/jdk-6u26-linux-x64.bin
3.执行安装文件
[root@localhost ~]# cd /usr/local
[root@localhost local]# ./jdk-6u26-linux-x64.bin&nbs
- MongoDB经典面试题集锦
BigBird2012
mongodb
1.什么是NoSQL数据库?NoSQL和RDBMS有什么区别?在哪些情况下使用和不使用NoSQL数据库?
NoSQL是非关系型数据库,NoSQL = Not Only SQL。
关系型数据库采用的结构化的数据,NoSQL采用的是键值对的方式存储数据。
在处理非结构化/半结构化的大数据时;在水平方向上进行扩展时;随时应对动态增加的数据项时可以优先考虑使用NoSQL数据库。
在考虑数据库的成熟
- JavaScript异步编程Promise模式的6个特性
bijian1013
JavaScriptPromise
Promise是一个非常有价值的构造器,能够帮助你避免使用镶套匿名方法,而使用更具有可读性的方式组装异步代码。这里我们将介绍6个最简单的特性。
在我们开始正式介绍之前,我们想看看Javascript Promise的样子:
var p = new Promise(function(r
- [Zookeeper学习笔记之八]Zookeeper源代码分析之Zookeeper.ZKWatchManager
bit1129
zookeeper
ClientWatchManager接口
//接口的唯一方法materialize用于确定那些Watcher需要被通知
//确定Watcher需要三方面的因素1.事件状态 2.事件类型 3.znode的path
public interface ClientWatchManager {
/**
* Return a set of watchers that should
- 【Scala十五】Scala核心九:隐式转换之二
bit1129
scala
隐式转换存在的必要性,
在Java Swing中,按钮点击事件的处理,转换为Scala的的写法如下:
val button = new JButton
button.addActionListener(
new ActionListener {
def actionPerformed(event: ActionEvent) {
- Android JSON数据的解析与封装小Demo
ronin47
转自:http://www.open-open.com/lib/view/open1420529336406.html
package com.example.jsondemo;
import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;
impor
- [设计]字体创意设计方法谈
brotherlamp
UIui自学ui视频ui教程ui资料
从古至今,文字在我们的生活中是必不可少的事物,我们不能想象没有文字的世界将会是怎样。在平面设计中,UI设计师在文字上所花的心思和功夫最多,因为文字能直观地表达UI设计师所的意念。在文字上的创造设计,直接反映出平面作品的主题。
如设计一幅戴尔笔记本电脑的广告海报,假设海报上没有出现“戴尔”两个文字,即使放上所有戴尔笔记本电脑的图片都不能让人们得知这些电脑是什么品牌。只要写上“戴尔笔
- 单调队列-用一个长度为k的窗在整数数列上移动,求窗里面所包含的数的最大值
bylijinnan
java算法面试题
import java.util.LinkedList;
/*
单调队列 滑动窗口
单调队列是这样的一个队列:队列里面的元素是有序的,是递增或者递减
题目:给定一个长度为N的整数数列a(i),i=0,1,...,N-1和窗长度k.
要求:f(i) = max{a(i-k+1),a(i-k+2),..., a(i)},i = 0,1,...,N-1
问题的另一种描述就
- struts2处理一个form多个submit
chiangfai
struts2
web应用中,为完成不同工作,一个jsp的form标签可能有多个submit。如下代码:
<s:form action="submit" method="post" namespace="/my">
<s:textfield name="msg" label="叙述:">
- shell查找上个月,陷阱及野路子
chenchao051
shell
date -d "-1 month" +%F
以上这段代码,假如在2012/10/31执行,结果并不会出现你预计的9月份,而是会出现八月份,原因是10月份有31天,9月份30天,所以-1 month在10月份看来要减去31天,所以直接到了8月31日这天,这不靠谱。
野路子解决:假设当天日期大于15号
- mysql导出数据中文乱码问题
daizj
mysql中文乱码导数据
解决mysql导入导出数据乱码问题方法:
1、进入mysql,通过如下命令查看数据库编码方式:
mysql> show variables like 'character_set_%';
+--------------------------+----------------------------------------+
| Variable_name&nbs
- SAE部署Smarty出现:Uncaught exception 'SmartyException' with message 'unable to write
dcj3sjt126com
PHPsmartysae
对于SAE出现的问题:Uncaught exception 'SmartyException' with message 'unable to write file...。
官方给出了详细的FAQ:http://sae.sina.com.cn/?m=faqs&catId=11#show_213
解决方案为:
01
$path
- 《教父》系列台词
dcj3sjt126com
Your love is also your weak point.
你的所爱同时也是你的弱点。
If anything in this life is certain, if history has taught us anything, it is
that you can kill anyone.
不顾家的人永远不可能成为一个真正的男人。 &
- mongodb安装与使用
dyy_gusi
mongo
一.MongoDB安装和启动,widndows和linux基本相同
1.下载数据库,
linux:mongodb-linux-x86_64-ubuntu1404-3.0.3.tgz
2.解压文件,并且放置到合适的位置
tar -vxf mongodb-linux-x86_64-ubun
- Git排除目录
geeksun
git
在Git的版本控制中,可能有些文件是不需要加入控制的,那我们在提交代码时就需要忽略这些文件,下面讲讲应该怎么给Git配置一些忽略规则。
有三种方法可以忽略掉这些文件,这三种方法都能达到目的,只不过适用情景不一样。
1. 针对单一工程排除文件
这种方式会让这个工程的所有修改者在克隆代码的同时,也能克隆到过滤规则,而不用自己再写一份,这就能保证所有修改者应用的都是同一
- Ubuntu 创建开机自启动脚本的方法
hongtoushizi
ubuntu
转载自: http://rongjih.blog.163.com/blog/static/33574461201111504843245/
Ubuntu 创建开机自启动脚本的步骤如下:
1) 将你的启动脚本复制到 /etc/init.d目录下 以下假设你的脚本文件名为 test。
2) 设置脚本文件的权限 $ sudo chmod 755
- 第八章 流量复制/AB测试/协程
jinnianshilongnian
nginxluacoroutine
流量复制
在实际开发中经常涉及到项目的升级,而该升级不能简单的上线就完事了,需要验证该升级是否兼容老的上线,因此可能需要并行运行两个项目一段时间进行数据比对和校验,待没问题后再进行上线。这其实就需要进行流量复制,把流量复制到其他服务器上,一种方式是使用如tcpcopy引流;另外我们还可以使用nginx的HttpLuaModule模块中的ngx.location.capture_multi进行并发
- 电商系统商品表设计
lkl
DROP TABLE IF EXISTS `category`; -- 类目表
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `category` (
`id` int(11) NOT NUL
- 修改phpMyAdmin导入SQL文件的大小限制
pda158
sqlmysql
用phpMyAdmin导入mysql数据库时,我的10M的
数据库不能导入,提示mysql数据库最大只能导入2M。
phpMyAdmin数据库导入出错: You probably tried to upload too large file. Please refer to documentation for ways to workaround this limit.
- Tomcat性能调优方案
Sobfist
apachejvmtomcat应用服务器
一、操作系统调优
对于操作系统优化来说,是尽可能的增大可使用的内存容量、提高CPU的频率,保证文件系统的读写速率等。经过压力测试验证,在并发连接很多的情况下,CPU的处理能力越强,系统运行速度越快。。
【适用场景】 任何项目。
二、Java虚拟机调优
应该选择SUN的JVM,在满足项目需要的前提下,尽量选用版本较高的JVM,一般来说高版本产品在速度和效率上比低版本会有改进。
J
- SQLServer学习笔记
vipbooks
数据结构xml
1、create database school 创建数据库school
2、drop database school 删除数据库school
3、use school 连接到school数据库,使其成为当前数据库
4、create table class(classID int primary key identity not null)
创建一个名为class的表,其有一