- 深入剖析 Linux 内核网络核心:sock.c 源码解析
109702008
编程#C语言网络linux网络人工智能
作为Linux网络子系统的基石,sock.c承载着协议无关的核心功能。本文将深入分析其关键实现,揭示高性能网络通信背后的设计哲学。一、Socket生命周期管理1.1初始化与分配sock_init_data()是socket的初始化入口,负责设置核心回调函数和默认参数:voidsock_init_data(structsocket*sock,structsock*sk){sk->sk_state=T
- buuctf新生赛(ACTF2020)
HfLllo
linux运维服务器
1.Upload:文件上传,phtml2.BackupFile:codesearch找备份文件,弱类型比较==(只要求值相等)3.Exec:网站;ls(linux列出当前目录有哪些文件和目录)网站;ls/(看根目录里有什么内容)查看文件:web;cat/file4.Include:php://filter/read=convert.base64-encode/resource=file.php,再
- 【Linux 从基础到进阶】IPv6配置与管理
爱技术的小伙子
Linux从基础到进阶linux运维服务器
IPv6配置与管理引言随着互联网地址资源的不断消耗,IPv6作为IPv4的继任者,已逐渐成为网络中的主流协议。相比IPv4,IPv6不仅提供了更为丰富的地址空间,还引入了多种新功能,如自动配置、安全性增强以及改进的路由效率。对于系统管理员来说,掌握IPv6的配置与管理至关重要。本文将详细介绍如何在CentOS和Ubuntu系统中进行IPv6的配置与管理,涵盖基本的网络配置、地址分配、路由配置以及常
- Linux(进程概念)
目录冯诺依曼体系操作系统进程概念进程控制进程状态环境变量虚拟地址空间(进程隔离与内存管理的基石)程序替换冯诺依曼体系五大硬件单元运算器控制器存储器输入设备输出设备所有硬件都是围绕内存工作的操作系统核心目的:高效管理与便捷交互资源管理:优化硬件与软件的资源分配提供抽象接口:屏蔽硬件复杂性保障系统安全与稳定性提供用户交互界面定位:计算机系统的管理者与桥梁如何管理:先描述再组织库函数与系统调用的关系系统
- 运行go程序时出现的同包多文件不能调用的问题
wjhx
golanggolang开发语言后端
翻出一个以前的项目,使用go编写,运行在linux上,当前在win11上运行,vscode下launch.json配置如下:{//使用IntelliSense了解相关属性。//悬停以查看现有属性的描述。//欲了解更多信息,请访问:https://go.microsoft.com/fwlink/?linkid=830387"version":"0.2.0","configurations":[{"n
- 互联网大厂Java面试实战:严肃面试官与搞笑谢飞机的三轮提问
Fu Dun Yao
Java场景面试宝典Java面试JUCJVM多线程线程池HashMap
互联网大厂Java面试实战:严肃面试官与搞笑谢飞机的三轮提问本文通过一个面试故事,展示了互联网大厂Java求职者与严肃面试官的对话。面试官就Java核心技术、JUC、JVM、多线程、线程池、HashMap、ArrayList、Spring及相关框架、分布式技术、消息队列、中间件、数据库、Linux、Docker、设计模式及DDD等多个技术点,分三轮提问。求职者谢飞机偶尔能准确回答简单问题获得认可,
- Nexpose 8.11.0 for Linux & Windows - 漏洞扫描
sysinside
WindowsNexpose
Nexpose8.11.0forLinux&Windows-漏洞扫描Rapid7on-premVulnerabilityManagement,releasedJune19,2025请访问原文链接:https://sysin.org/blog/nexpose/查看最新版。原创作品,转载请保留出处。作者主页:sysin.orgNexposeVulnerabilityScanner您的本地漏洞扫描程序搜
- git本地裸仓库的“激活”:在同一台 Linux 服务器上创建工作区
运维开发王义杰
系统运维软件工具服务器gitlinux
大家好!在之前的文章中,我们探讨了Git裸仓库(BareRepository)的概念,它是没有工作目录,只包含.git目录内容的特殊仓库格式,非常适合作为中心化的代码集散地或备份。我们也了解了gitclone--mirror命令会生成这样的裸仓库。现在,假设我们已经在Linux服务器上的/data/gitlab/cex-cicd/pipeline.git路径下拥有一个这样的裸仓库(之前备份或创建的
- linux系统中如何查看日志 (常用命令)
darling_user
Linux
cattail-f日志文件说明/var/log/message系统启动后的信息和错误日志,是RedHatLinux中最常用的日志之一/var/log/secure与安全相关的日志信息/var/log/maillog与邮件相关的日志信息/var/log/cron与定时任务相关的日志信息/var/log/spooler与UUCP和news设备相关的日志信息/var/log/boot.log守护进程启动
- android15 修改默认亮度及关闭自动亮度调节
darling_user
Androidandroid
默认亮度1、先把设备亮度手动调整到对应亮度2、通过adb命令获取对应亮度值adbshellsettingsgetsystemscreen_brightness3、代码上修改默认亮度值SYS/frameworks/base/core/res/res/values/config.xml-102+255SYS/frameworks/base/packages/SettingsProvider/res/v
- 国产操作系统编译统信uos(linux)编译Sqlite3.3
不行人视
环境踩坑linuxsqlite笔记
文章目录一、下载源码二、编译步骤1.解压2.构建3.编译下载三、检查安装是否成功一、下载源码链接:https://www.sqlite.org/index.html二、编译步骤1.解压tar-xvfsqlite-autoconf-3460000.tar.gz新建一个文件夹用来存放编译下载的文件mkdirset_sql进入解压的文件夹cdcdsqlite-autoconf-3460000/2.构建构
- 阿里云Redhat系Linux修改ssh默认端口
z同学的编程之旅
环境搭建阿里云linuxssh
阿里云Redhat系Linux修改ssh默认端口在阿里云买了个服务器,想着ssh的默认端口是22,这不安全。我就将修改ssh默认端口的过程记录下来了,方便日后回看。本命令适用于Redhat系Linux,例如Redhat、Centos、AlibabaCloudLinux、OracleLinux、RockyLinux、AlmaLinux等。我为什么知道这些Linux?因为公司有内核相关业务,接触的多了
- 统信UOS(Linux)安装nvm node管理工具
高高i
linux运维服务器UOS统信nvm安装
整篇看完再操作,有坑!!官网nvm官网按照官网方式安装,一直报错经过不断研究,正确步骤如下1、下载安装包可能因为网络安全不能访问github,我是链接热点下载的wgethttps://github.com/nvm-sh/nvm/archive/refs/tags/v0.39.1.tar.gz2、解压可能报mkdir无权限,所以需要使用sudo执行解压命令,可能报找不到文件【v0.39.1.tar.
- linux -bash: fork: Cannot allocate memory解决办法
肖二狗
linuxbashlinux运维
linux-bash:fork:Cannotallocatememory执行命令显示:-bash:fork:Cannotallocatememory排查发现原因:系统的pid_max不够用了echo1493909>/proc/sys/kernel/pid_max执行命令后,系统正常
- Xshell登录服务器提示:-bash: fork: Cannot allocate memory
779醒
Linux云服务器
问题描述:Xshell登录服务器提示:-bash:fork:Cannotallocatememory输入free#查看内存使用情况查看最大进程数sysctlkernel.pid_max#查看最大进程数ps-eLf|wc-l查看进程数问题原因:内存已经占满AWS服务器内存不足,添加虚拟内存
- Linux更新操作系统Openssh版本9.3p1(源码编译安装)
Lz__Heng
LinuxOpenSSHlinux服务器运维
Linux更新操作系统Openssh版本9.3p1(源码编译安装)部署前准备安装依赖yuminstall-ygccgcc-c++glibcmakeautoconfopensslopenssl-develpcre-develpam-develyuminstall-ypam*zlib*openssh-9.3p1.tar.gzopenssl-3.1.0.tar.gz备份文件cp/etc/pam.d/ss
- 【AI成长会】ubuntu 安装运行rust
行云流水AI笔记
ubunturustlinux
在Ubuntu上用Rust编写第一个程序从你的输出可以看出,Rust已经成功安装在你的Ubuntu系统上了。现在我们来编写并运行第一个Rust程序,整个过程需要几个简单的步骤:一、配置Shell环境(如果需要)虽然安装提示可能需要重启Shell,但你也可以直接在当前会话中配置环境:#对于bash/zsh等shell."$HOME/.cargo/env"#如果你使用fishshellsource"$
- Reqable:跨平台HTTP开发与调试工具
在现代软件开发中,HTTP请求的调试和测试是开发者日常工作的重要组成部分。Reqable是一款功能强大且易于使用的跨平台HTTP开发与调试工具,它简化了HTTP请求的构建、发送和响应分析过程,为开发者提供了极大的便利。一、Reqable的主要功能Reqable提供了丰富的功能,帮助开发者高效地进行HTTP开发和调试:多平台支持:Reqable支持Windows、macOS和Linux操作系统,确保
- Linux下RabbitMQ集群安装
长腿帅哥
Linux操作手册rabbitmqlinux
一、环境准备(all)1.下载rabbitmq、erlang包查看两者对应的版本号RabbitMQErlangVersionRequirements—RabbitMQerlang:otp_src_24.2.tar.gzrabbitmq:rabbitmq-server-generic-unix-3.10.5.tar.xzIP:192.168.255.150、192.168.255.151、192.1
- python日期时间用哪个模块_python模块介绍-datetime介绍:基本的日期和时间类型
待更新介绍gevent是基于协程的Python网络库。特点:基于libev的快速事件循环(Linux上epoll,FreeBSD上kqueue)。基于greenlet的轻量级执行单元。API的概念和Python标准库一致(如事件,队列)。可以配合socket,ssl模块使用。能够使用标准库和第三方模块创建标准的阻塞套接字(gevent.monkey)。默认通过线程池进行DNS查询,也可通过c-ar
- ADIOS2 介绍与使用指南
东北豆子哥
HPC/MPIHPC
文章目录ADIOS2介绍与使用指南什么是ADIOS2?ADIOS2的主要特点ADIOS2核心概念ADIOS2安装Linux系统安装Windows安装ADIOS2基本使用C++示例Python示例ADIOS2高级特性并行I/O流模式ADIOS2引擎类型性能优化建议总结ADIOS2介绍与使用指南什么是ADIOS2?ADIOS2(AdaptableInputOutputSystemversion2)是一
- linux nvidia-smi失败(已测有效)
Summer_Anny
linux运维服务器
ref:https://worktile.com/kb/ask/345201.html当在Linux终端中无法找到nvidia命令时,可能有以下几种原因:Nvidia驱动未安装:首先,要使用nvidia命令,需要在系统上安装Nvidia驱动程序。您可以通过以下步骤来安装驱动:a.检查系统上是否已经安装了Nvidia显卡。可以运行以下命令来检查:“lspci|grep-invidia“b.如果未安装
- Linux configfs机制
liujiliei
1、在使用intelSOC过程中,驱动的DTS需要在内核启动以后把FPGAcoreload以后加载PL侧设备的DTS,此时使用的是Linux的dts的overlay机制,该机制本质是使用Linux的configfs机制,在此分析。2、Linux内核驱动中使用的设备树作为驱动match的方法,在内核初始化时候会对dts解析,然后生成一个个的devicenode,根据node中的compatile与d
- DeepSeek R1 Android本地化部署
Dawson_Jiang
大模型deepseekollamaAI大模型手机部署deepseek
1.概述android手机端部署deepseek一般需要安装termux,ollama,deepseek三个大的步骤原因分析:deepseek等大模型需要类似ollama的工具去运行。ollama有macwindow和linux版本,无Android版本;termux是一个模拟linux环境的Androidapp,在此环境中即可安装运行ollamalinux版本,然后再ollama上面部署运行de
- Linux-笔记 设备树插件
FU.l
笔记驱动开发linux
目录前言:设备树插件的书写规范:设备树插件的编译:内核配置:应用背景:举例:前言:设备树插件(DeviceTreeBlobOverlay,简称DTBO)是Linux内核和嵌入式系统中用于动态修改或扩展系统运行时的设备树配置的一种机制。它是对传统设备(DeviceTreeSource,简称DTS)的补充,允许在不重新编译整个内核的情况下,对硬件配置进行更改。本质也是个设备树文件。设备树插件的书写规范
- Android 跨进程通信(IPC)深度技术总结
JT-Blink
Androidandroid
1.概述Android系统基于Linux内核,采用多进程架构设计。每个Android应用默认运行在独立的进程中,拥有独立的虚拟机实例和内存空间。进程间的内存隔离机制保证了系统的稳定性和安全性,但同时也带来了进程间通信的挑战。1.1为什么需要跨进程通信系统架构需求:Android系统服务(如ActivityManagerService、WindowManagerService)运行在system_s
- 嵌入式linux下基于boa cgic sqlite3的ajax web服务器搭建
モザイクカケラ
嵌入式linux-web嵌入式系统开发boacgicsqlite3嵌入式linuxajax
先上大家的资源全部亲测可用sqlite3数据库c语言常用接口应用实例sqlite3数据库交叉编译并移植到嵌入式开发环境步骤fprintf与stderr、stdout的使用Windows中IIS服务器被防火墙阻止导致外网无法访问sqlite3.OperationalError:unabletoopendatabasefileSQLiteDelete语句SQLite数据库中rowid使用基本操作交叉编
- VSCode更改程序编译之后生成文件的保存路径
一low永逸
安装IDEvscode
目录目标过程如何生成json代码其他参考目标想把程序文件和生成文件分开来,生成在当前文件的out文件夹过程在保存代码的文件夹下面再建一个保存生成文件的文件夹,我生成了out文件夹打开.vscode文件夹下面settings.json文件(这个json文件可以自己生成或复制过来,不影响使用)在settings.json中加入以下代码,我主要使用C++语言,所以只改这个,不同系统的shell语法不一样
- 从入门到精通:进程信号
每天进步亿丢丢
Linux学习服务器网络linuxc++
引言在操作系统的世界里,信号是一种用于进程间通信和控制的重要机制。信号能够在不同的进程之间传递异步事件,通知进程发生了某种情况。在Linux系统中,信号的使用是非常普遍且重要的,尤其是在处理进程控制、异常处理和进程间通信时。本文将带你深入了解Linux系统中的信号机制,从基本概念到高级应用,全面覆盖信号的生成、阻塞、捕捉和处理。通过对信号的深入理解和实际操作,你将能够更好地控制和管理进程,提高程序
- docker网络_docker之间的网络协议
2401_89224733
网络docker网络协议
一、docker网络模式docker0网络docker容器的虚拟网关loopback:回环网卡、TCP/IP网卡virtualbridge:linux自身继承了一个虚拟化功能(kvm架构),是原生架构的一个虚拟化平台,安装了一个虚拟化平台之后就会系统就会自动安装虚拟网卡。安装workstation(虚拟化平台)之后,会在网络适配器中会多出VMnet1VMnet8VMnet0)docker0:容器的
- xml解析
小猪猪08
xml
1、DOM解析的步奏
准备工作:
1.创建DocumentBuilderFactory的对象
2.创建DocumentBuilder对象
3.通过DocumentBuilder对象的parse(String fileName)方法解析xml文件
4.通过Document的getElem
- 每个开发人员都需要了解的一个SQL技巧
brotherlamp
linuxlinux视频linux教程linux自学linux资料
对于数据过滤而言CHECK约束已经算是相当不错了。然而它仍存在一些缺陷,比如说它们是应用到表上面的,但有的时候你可能希望指定一条约束,而它只在特定条件下才生效。
使用SQL标准的WITH CHECK OPTION子句就能完成这点,至少Oracle和SQL Server都实现了这个功能。下面是实现方式:
CREATE TABLE books (
id &
- Quartz——CronTrigger触发器
eksliang
quartzCronTrigger
转载请出自出处:http://eksliang.iteye.com/blog/2208295 一.概述
CronTrigger 能够提供比 SimpleTrigger 更有具体实际意义的调度方案,调度规则基于 Cron 表达式,CronTrigger 支持日历相关的重复时间间隔(比如每月第一个周一执行),而不是简单的周期时间间隔。 二.Cron表达式介绍 1)Cron表达式规则表
Quartz
- Informatica基础
18289753290
InformaticaMonitormanagerworkflowDesigner
1.
1)PowerCenter Designer:设计开发环境,定义源及目标数据结构;设计转换规则,生成ETL映射。
2)Workflow Manager:合理地实现复杂的ETL工作流,基于时间,事件的作业调度
3)Workflow Monitor:监控Workflow和Session运行情况,生成日志和报告
4)Repository Manager:
- linux下为程序创建启动和关闭的的sh文件,scrapyd为例
酷的飞上天空
scrapy
对于一些未提供service管理的程序 每次启动和关闭都要加上全部路径,想到可以做一个简单的启动和关闭控制的文件
下面以scrapy启动server为例,文件名为run.sh:
#端口号,根据此端口号确定PID
PORT=6800
#启动命令所在目录
HOME='/home/jmscra/scrapy/'
#查询出监听了PORT端口
- 人--自私与无私
永夜-极光
今天上毛概课,老师提出一个问题--人是自私的还是无私的,根源是什么?
从客观的角度来看,人有自私的行为,也有无私的
- Ubuntu安装NS-3 环境脚本
随便小屋
ubuntu
将附件下载下来之后解压,将解压后的文件ns3environment.sh复制到下载目录下(其实放在哪里都可以,就是为了和我下面的命令相统一)。输入命令:
sudo ./ns3environment.sh >>result
这样系统就自动安装ns3的环境,运行的结果在result文件中,如果提示
com
- 创业的简单感受
aijuans
创业的简单感受
2009年11月9日我进入a公司实习,2012年4月26日,我离开a公司,开始自己的创业之旅。
今天是2012年5月30日,我忽然很想谈谈自己创业一个月的感受。
当初离开边锋时,我就对自己说:“自己选择的路,就是跪着也要把他走完”,我也做好了心理准备,准备迎接一次次的困难。我这次走出来,不管成败
- 如何经营自己的独立人脉
aoyouzi
如何经营自己的独立人脉
独立人脉不是父母、亲戚的人脉,而是自己主动投入构造的人脉圈。“放长线,钓大鱼”,先行投入才能产生后续产出。 现在几乎做所有的事情都需要人脉。以银行柜员为例,需要拉储户,而其本质就是社会人脉,就是社交!很多人都说,人脉我不行,因为我爸不行、我妈不行、我姨不行、我舅不行……我谁谁谁都不行,怎么能建立人脉?我这里说的人脉,是你的独立人脉。 以一个普通的银行柜员
- JSP基础
百合不是茶
jsp注释隐式对象
1,JSP语句的声明
<%! 声明 %> 声明:这个就是提供java代码声明变量、方法等的场所。
表达式 <%= 表达式 %> 这个相当于赋值,可以在页面上显示表达式的结果,
程序代码段/小型指令 <% 程序代码片段 %>
2,JSP的注释
<!-- -->
- web.xml之session-config、mime-mapping
bijian1013
javaweb.xmlservletsession-configmime-mapping
session-config
1.定义:
<session-config>
<session-timeout>20</session-timeout>
</session-config>
2.作用:用于定义整个WEB站点session的有效期限,单位是分钟。
mime-mapping
1.定义:
<mime-m
- 互联网开放平台(1)
Bill_chen
互联网qq新浪微博百度腾讯
现在各互联网公司都推出了自己的开放平台供用户创造自己的应用,互联网的开放技术欣欣向荣,自己总结如下:
1.淘宝开放平台(TOP)
网址:http://open.taobao.com/
依赖淘宝强大的电子商务数据,将淘宝内部业务数据作为API开放出去,同时将外部ISV的应用引入进来。
目前TOP的三条主线:
TOP访问网站:open.taobao.com
ISV后台:my.open.ta
- 【MongoDB学习笔记九】MongoDB索引
bit1129
mongodb
索引
可以在任意列上建立索引
索引的构造和使用与传统关系型数据库几乎一样,适用于Oracle的索引优化技巧也适用于Mongodb
使用索引可以加快查询,但同时会降低修改,插入等的性能
内嵌文档照样可以建立使用索引
测试数据
var p1 = {
"name":"Jack",
"age&q
- JDBC常用API之外的总结
白糖_
jdbc
做JAVA的人玩JDBC肯定已经很熟练了,像DriverManager、Connection、ResultSet、Statement这些基本类大家肯定很常用啦,我不赘述那些诸如注册JDBC驱动、创建连接、获取数据集的API了,在这我介绍一些写框架时常用的API,大家共同学习吧。
ResultSetMetaData获取ResultSet对象的元数据信息
- apache VelocityEngine使用记录
bozch
VelocityEngine
VelocityEngine是一个模板引擎,能够基于模板生成指定的文件代码。
使用方法如下:
VelocityEngine engine = new VelocityEngine();// 定义模板引擎
Properties properties = new Properties();// 模板引擎属
- 编程之美-快速找出故障机器
bylijinnan
编程之美
package beautyOfCoding;
import java.util.Arrays;
public class TheLostID {
/*编程之美
假设一个机器仅存储一个标号为ID的记录,假设机器总量在10亿以下且ID是小于10亿的整数,假设每份数据保存两个备份,这样就有两个机器存储了同样的数据。
1.假设在某个时间得到一个数据文件ID的列表,是
- 关于Java中redirect与forward的区别
chenbowen00
javaservlet
在Servlet中两种实现:
forward方式:request.getRequestDispatcher(“/somePage.jsp”).forward(request, response);
redirect方式:response.sendRedirect(“/somePage.jsp”);
forward是服务器内部重定向,程序收到请求后重新定向到另一个程序,客户机并不知
- [信号与系统]人体最关键的两个信号节点
comsci
系统
如果把人体看做是一个带生物磁场的导体,那么这个导体有两个很重要的节点,第一个在头部,中医的名称叫做 百汇穴, 另外一个节点在腰部,中医的名称叫做 命门
如果要保护自己的脑部磁场不受到外界有害信号的攻击,最简单的
- oracle 存储过程执行权限
daizj
oracle存储过程权限执行者调用者
在数据库系统中存储过程是必不可少的利器,存储过程是预先编译好的为实现一个复杂功能的一段Sql语句集合。它的优点我就不多说了,说一下我碰到的问题吧。我在项目开发的过程中需要用存储过程来实现一个功能,其中涉及到判断一张表是否已经建立,没有建立就由存储过程来建立这张表。
CREATE OR REPLACE PROCEDURE TestProc
IS
fla
- 为mysql数据库建立索引
dengkane
mysql性能索引
前些时候,一位颇高级的程序员居然问我什么叫做索引,令我感到十分的惊奇,我想这绝不会是沧海一粟,因为有成千上万的开发者(可能大部分是使用MySQL的)都没有受过有关数据库的正规培训,尽管他们都为客户做过一些开发,但却对如何为数据库建立适当的索引所知较少,因此我起了写一篇相关文章的念头。 最普通的情况,是为出现在where子句的字段建一个索引。为方便讲述,我们先建立一个如下的表。
- 学习C语言常见误区 如何看懂一个程序 如何掌握一个程序以及几个小题目示例
dcj3sjt126com
c算法
如果看懂一个程序,分三步
1、流程
2、每个语句的功能
3、试数
如何学习一些小算法的程序
尝试自己去编程解决它,大部分人都自己无法解决
如果解决不了就看答案
关键是把答案看懂,这个是要花很大的精力,也是我们学习的重点
看懂之后尝试自己去修改程序,并且知道修改之后程序的不同输出结果的含义
照着答案去敲
调试错误
- centos6.3安装php5.4报错
dcj3sjt126com
centos6
报错内容如下:
Resolving Dependencies
--> Running transaction check
---> Package php54w.x86_64 0:5.4.38-1.w6 will be installed
--> Processing Dependency: php54w-common(x86-64) = 5.4.38-1.w6 for
- JSONP请求
flyer0126
jsonp
使用jsonp不能发起POST请求。
It is not possible to make a JSONP POST request.
JSONP works by creating a <script> tag that executes Javascript from a different domain; it is not pos
- Spring Security(03)——核心类简介
234390216
Authentication
核心类简介
目录
1.1 Authentication
1.2 SecurityContextHolder
1.3 AuthenticationManager和AuthenticationProvider
1.3.1 &nb
- 在CentOS上部署JAVA服务
java--hhf
javajdkcentosJava服务
本文将介绍如何在CentOS上运行Java Web服务,其中将包括如何搭建JAVA运行环境、如何开启端口号、如何使得服务在命令执行窗口关闭后依旧运行
第一步:卸载旧Linux自带的JDK
①查看本机JDK版本
java -version
结果如下
java version "1.6.0"
- oracle、sqlserver、mysql常用函数对比[to_char、to_number、to_date]
ldzyz007
oraclemysqlSQL Server
oracle &n
- 记Protocol Oriented Programming in Swift of WWDC 2015
ningandjin
protocolWWDC 2015Swift2.0
其实最先朋友让我就这个题目写篇文章的时候,我是拒绝的,因为觉得苹果就是在炒冷饭, 把已经流行了数十年的OOP中的“面向接口编程”还拿来讲,看完整个Session之后呢,虽然还是觉得在炒冷饭,但是毕竟还是加了蛋的,有些东西还是值得说说的。
通常谈到面向接口编程,其主要作用是把系统设计和具体实现分离开,让系统的每个部分都可以在不影响别的部分的情况下,改变自身的具体实现。接口的设计就反映了系统
- 搭建 CentOS 6 服务器(15) - Keepalived、HAProxy、LVS
rensanning
keepalived
(一)Keepalived
(1)安装
# cd /usr/local/src
# wget http://www.keepalived.org/software/keepalived-1.2.15.tar.gz
# tar zxvf keepalived-1.2.15.tar.gz
# cd keepalived-1.2.15
# ./configure
# make &a
- ORACLE数据库SCN和时间的互相转换
tomcat_oracle
oraclesql
SCN(System Change Number 简称 SCN)是当Oracle数据库更新后,由DBMS自动维护去累积递增的一个数字,可以理解成ORACLE数据库的时间戳,从ORACLE 10G开始,提供了函数可以实现SCN和时间进行相互转换;
用途:在进行数据库的还原和利用数据库的闪回功能时,进行SCN和时间的转换就变的非常必要了;
操作方法: 1、通过dbms_f
- Spring MVC 方法注解拦截器
xp9802
spring mvc
应用场景,在方法级别对本次调用进行鉴权,如api接口中有个用户唯一标示accessToken,对于有accessToken的每次请求可以在方法加一个拦截器,获得本次请求的用户,存放到request或者session域。
python中,之前在python flask中可以使用装饰器来对方法进行预处理,进行权限处理
先看一个实例,使用@access_required拦截:
?