数据库服务器

用dotnet core搭建web服务器(三)ORM访问数据库

僤鯓⒐⒋嵵緔 提交于 2019-12-04 23:44:46
访问传统sql数据库,大家以前都是用sql语句去查询。这些年流行orm方法 ORM是对象关系映射的简拼,就是用一个对象(class)去表示数据的一行,用对象的成员去表述数据的列 dotnet 官方很早就有orm模型 entiry framework,这里我们就以 mysql/miriadb 为例 说明 entiry framework的使用 代码在这里 https://gitee.com/lightsever/netcore_study/tree/master/server03_orm 第一步、搭建数据库环境 我比较偷懒,直接xampp搭建,这样比较简单。 mysql数据库 注意端口,图上有 3306 启动apache 和 mysql 服务 然后点击mysql行的admin 可以打开phpmyadmin页面直接管理数据库 创建一个用来测试的库,我就叫他testdb 第二步,ORM框架的安装 创建 dotnet core 项目,引入 lib.http 这些略,搭建一个http服务来测试 安装nuget包 Pomelo.EntityFrameworkCore.MySql nuget包安装方法略 第三步,编写模型代码 定义这样两个对象 Item1就是 ORM的O,一个Item1的实例,就是数据库中的一行,当然ORM框架不止可以针对SQL数据库

Redis

筅森魡賤 提交于 2019-12-04 20:39:07
1. 为啥在项目里要用缓存呢 用缓存,主要是俩用途,高性能和高并发 高性能 image.png 高并发 image.png 2.介绍 Redis 是一个开源的使用 ANSI C 语言编写、遵守 BSD 协议、支持网络、可基于内存亦可持久化的日志型、Key-Value 数据库,并提供多种语言的 API的非关系型数据库。 传统数据库(关系型数据库)遵循 ACID 规则。而 Nosql(非关系型数据库)(Not Only SQL 的缩写,是对不同于传统的关系型数据库的数据库管理系统的统称) 一般为分布式,而分布式一般遵循 CAP 定理。 CAP理论 C:consistency(一致性) A:avalibility(可用性) P:Partition(分区)-tolerence to partition(分区容忍度) 分区:一个分布式系统,网络不通讯,导致连接不通,系统被分割成几个数据区域 原因:数据不连通了,产生数据分区 影响: 查还好一点 数据修改时,必须要求数据一致--加锁,实现数据一致性【需求要求数据一致性】 数据修改时,可以数据不一致--不用加锁【需求不要求数据一致性】 分区容忍度 数据的一致性要求高,容忍度高,加锁 数据的一致性要求低,容忍度低,可以不加锁 预期结果,保持数据的一致 可用性 请求在一定时间段内都应该有响应 为了解决锁一直加着 CP理论:【一致性+分区

2019年高级程序员面试题收集

南楼画角 提交于 2019-12-04 20:37:37
1.用正则 写出以139开头的手机号码: $str = '13812345678'; $pattern = '/^139\d{8}$/'; preg_match($pattern,$str,$macth); var_dump($macth); 2. 用PHP方式对目录进行遍历 $dir = './test'; function loopDir($dir){ $handle = opendir($dir); while(false !==($file =readdir($handle))){ if($file!='.'&&$file!='..'){ echo $file."<br>"; if(filetype($dir.'/'.$file)=='dir'){ loopDir($dir.'/'.$file); } } }}loopDir($dir);3.冒泡排序: function maopao($arr){ $len = count($arr); $n = count($arr)-1; for($i=0;$i<$len;$i++){ for($j=0;$j<$n;$j++){ if($arr[$j]<$arr[$j+1]){ $temp = $arr[$j+1]; $arr[$j+1] = $arr[$j]; $arr[$j] =$temp; } } } return $arr; }

MSSQLLocalDB 微软本地数据库,pk SQLlite

允我心安 提交于 2019-12-04 17:35:01
1、安装配置 MSSQLLocalDB 微软本地数据库,Visual Studio 安装时会自动装上。 2、图形管理工具 如果需要图形界面的管理工具,Microsoft SQL Server Management Studio 或者 Navicat Premium , Navicat的 ‘主机名或IP地址’ 配置: (localdb)\ MSSQLLocalDB 或者 (localdb)\ XXXLocalDB 实例名。 Management Studio 服务器名称: (localdb)\ MSSQLLocalDB 或者 (localdb)\ XXXLocalDB 实例名。 使用 Windows 身份验证,服务器类型:数据库引挈。 来源: https://www.cnblogs.com/hopesun/p/11875597.html

swoole实现多人游戏的要点

孤街醉人 提交于 2019-12-04 15:20:50
swoole实现多人游戏的要点 比方说多人在线 要满足以下两点 1 所有玩家的数据要实时更新到服务器数据库数据 2 改动过的服务器数据库数据处理方式如下: 1如果多人连接实时性都很高 那可以写个定时器返回数据 2如果实时性不高(一般采取返回需要修改的数据)实时更新到每个玩家客户端 来源: https://www.cnblogs.com/newmiracle/p/11871341.html

ICT技术基础--政企云ICT基础

情到浓时终转凉″ 提交于 2019-12-04 12:25:12
一、IP网络基础 (一)internet简介史 1960(ARPANET)-1970(Internet概念诞生、TCP/IP诞生)—1980(CSNET NSFNET)—1990(ANASNET)-现在(Internet) (二)什么是Internet? 1、网络:将2组通信设备连接一起互通。 2、Internet:2个或者多个设备彼此通信,使用TCP/IP协议互连。 设备与设备通过网络介质互联构成网络,网络与网络之间通过TCP/IP协议互连构成Internet。 (三)数据通信协议基础: 1、OSI RM:开发系统互联参考模型(open system interconnection reference model)--七层协议架构—物理层、数据链路层、网络层、传输层、会话层、表示层、应用层 2、TCP/IP协议族—五层协议架构—物理层、数据链路层、网络层、传输层、应用层 (四)TCP/IP各层功能 1-3层:数据通信主要层 1、物理层:1、定义了电压、接口、电缆标准、传输距离。2、传输比特流。3、定义了传输介质:同轴电缆、双绞线、光纤、无线电波等。 物理层主要设备:集线器HUB(交换)、中继器repeater 2、数量链路层:1、物理地址MAC的定义。2、链路参数与流控参数的定义。3、差错验证。 主要设备:2层/以太网交换机、网桥。 物理地址(MAC)的介绍 全球唯一的物理地址

全栈项目|小书架|服务器开发-Koa2 连接MySQL数据库(Navicat+XAMPP)

回眸只為那壹抹淺笑 提交于 2019-12-04 12:12:08
为什么使用数据库 为什么需要数据库?-知乎 相比与文件系统,数据库具有以下优势: 高效率:查找效率高 高可用:可数据库共享 安全性强:数据不能随意修改 选择哪个数据库 数据库可以分为 关系型数据库 和 非关系型数据库 。 关系型数据库 :是指采用了关系模型来组织数据的数据库,关系模型指的就是二维表格模型(一个表由行和列组成),而一个关系型数据库就是由二维表及其之间的联系所组成的一个数据组织。 代表的数据库有: 非关系型数据库(NoSQL) : NoSQL(NoSQL = Not Only SQL ) ,意即“不仅仅是SQL”。以键值对存储,且结构不固定,每一个元组可以有不一样的字段,每个元组可以根据需要增加一些自己的键值对。 元组 (tuple) 是关系数据库中的基本概念,关系是一张表,表中的每行(即数据库中的每条记录)就是一个元组,每列就是一个属性。 在二维表里,元组也称为行。 代表的数据库有: 参考1:关系型数据库和非关系型数据库区别、oracle与mysql的区别 参考2:非关系型数据库(NoSQL)相关概念介绍(附:常见的非关系型数据库) 参考3:数据库-维基百科 目前这个项目中使用的还是传统的 MySQL 数据库。 mysql2 使用 适用于 Node.js 的 MySQL驱动 ,侧重于性能。支持预备语句,非 utf8 编码,二进制日志协议,压缩, ssl 等。 地址:

从壹开始 [ Ids4实战 ] 之五 ║ 多项目集成统一认证中心的思考

别来无恙 提交于 2019-12-04 08:01:24
前言 哈喽大家好,好久都没有写文章了,这次 又重新开始写 技术文章 了,半年前我还是一直保持每周都写文章的,后来是为了响应群友的号召,开始踏上了录制视频 (https://www.bilibili.com/video/av58096866) ,直播授课 ( https://live.bilibili.com/21507364 ) 的道路,目前看来效果还算基本及格吧,虽然人气没有那些大佬的多,不过我也是一直很尽心力,包括字幕的录入,每周三定期的讲课,不过真的很累,但是自认为做的还可以了,只是没能申请上MVP🙃。 为什么突然想要写文章了呢,我是有强迫症的,目前开源了五个系列的文章,从 NetCore 到 Vue,从 Admin 到 Nuxt,然后从 DDD 到 IdentityServer4,我自认为都是贴近实战的,因为看到某些小伙伴说,应用到了公司的项目里,我也是很开心,而且 NetCore 项目的Github start 数也破千了,我感谢每一个点赞评论的小伙伴,我都是每条评论必回,每个邮件也必回: 我自信这一年多以来,对netcore的基础知识已经了解的七七八八了,基本都能回答些,但是每当有人问到 IdentityServer4 的相关内容的时候,我都稍微捉襟见肘,虽然我写了四篇文章,但是因为中间卡了一个心结( 具体内容下文会说明 ),所以没有进行下去

学习笔记:oracle学习一:oracle11g体系结构之物理存储结构

僤鯓⒐⒋嵵緔 提交于 2019-12-04 07:26:18
目录 1、物理存储结构 1.1 数据文件 1.2 控制文件 1.3 日志文件 1.3.1 重做日志文件 1.3.2 归档日志文件 1.4 服务器参数文件 1.4.1 查看服务器参数 1.4.2 修改服务器参数 1.5 密码文件、警告文件和跟踪文件 1.5.1 密码文件 1.5.2 警告文件 1.5.3 跟踪文件 本系列是作为学习笔记,用于记录学习过程,加深学习印象,以及自己重新回顾学习内容只用,参考书籍为《oracle 11g从入门到精通(第二版)》,如果需要深入学习,请购买原书籍,谢谢! 1、物理存储结构 物理存储结构用于描述oracle数据在磁盘上的物理组成情况,oracle数据在逻辑上存储于表空间中,在物理上存储在表空间所包含的物理文件(即数据文件)中。 物理文件主要有: 数据文件 重做日志文件 归档日志文件 参数文件 口令文件 警告日志文件 如下所示: 1.1 数据文件 数据文件用于保存用户应用程序数据和oracle系统内部数据。逻辑存储表空间可以包含一个或多个数据文件,但是一个数据文件只能属于一个表空间。 oracle系统通过高速缓存区来存取数据,减少磁盘I/O操作,提高系统性能,过程如下: 1)、读取数据 从数据文件读取数据--》》将数据存储在内存的高速缓存区--》》对于新读取的数据若不在高速缓存区,则系统从相应的数据文件中读取数据并缓存在高速缓存区 2)

redis原理及应用

大兔子大兔子 提交于 2019-12-04 07:01:19
一、redis来源 二、数据类型 三、主流的应用场景 四、特性 五、补充 一、 redis来源 redis作者:Salvatore Sanfilippo (antirez),男,意大利人. 需求:一个访客信息追踪网站,网站可以通过JavaScript脚本,将访客的IP地址、所属国家、阅览器信息、被访问页面的地址等数据传送给LLOOGG. com。然后LLOOGG.com会将这些浏览数据通过web页面实时地展示给用户,并储存起最新的5至10,000条浏览记录以便进行查阅。 redis解决方案 每当某个被追踪的网站新增一条浏览记录时,LLOOGG.com就会将这条新的浏览记录推入(push)到与该网站相对应的列表里面,当列表的长度超过用户指定的最大长度时,程序每向列表推入一条新的记录,就需要从列表中弹出(pop)一条最旧的记录。 现在已经被广泛使用: Twitter使用Redis来储存用户时间线(user timeline)。 StackOverflow使用Redis来进行缓存和消息分发。 Pinterest使用Redis来构建关注模型(follow model)和兴趣图谱(interest graph)。 Flickr使用Redis来构建队列。 Github使用Redis作为持久化的键值对数据库,并使用Resque来实现消息队列。 新浪微博使用Redis来实现计数器、反向索引、排行榜