主键:绝对不能有空值。唯一索引:可以有空值
原理:第一SQL本身有问题(这个不是主要问题)。第二你写的SQL很有问题(这是最主要的)
防范:第一,绝对不要相信用户输入的任何东西。第二,预编译。现在的框架一般都会有SQL过滤的。
第一,数据超过一定数量或者体积,请拆分表,垂直或者水平分(最有效果的优化)
第二,务必有自增主键。通过自增主键来查数据是最快的。
第三,常用的查询字段建立联合索引,写SQL一定要尊从最左原则,用到这个索引。
第四,不要把逻辑运算放到sql里。言外之意是,不要写太复杂的SQL,你能写复杂的SQL 你肯定也能通过PHP实现。
事务(transaction)是作为一个单元的一组有序的数据库操作。如果组中的所有操作都成功,则认为事务成功,即使只有一个操作失败,事务也不成功。如果所有操作完成,
事务则提交,其修改将作用于所有其他数据库进程。如果一个操作失败,则事务将回滚,该事务所有操作的影响都将取消。
会 写正则最好。我反正不会正则,需要用的时候就百度。
遍历数组,求当前时间差,和第一个进行对比,小于第一个交换位置。最后取第一个即可。
这三个放在一起,回答的点在于,print_r是函数,echo、print是结构语言。
但从PHP来讲,考的是PHP数组的实现。可以简单的认为,PHP的数组是hash桶+十字链表(实际上是数列Array,列表List,散列表/关联数组/字典Hashtable的聚合体)。优点是查询效率很高,遍历很方便,缺点是,占内存较多。(还是空间换时间的思路,毕竟现在内存又不值钱)
C语言的数组,就是定长定类型的数列。
跳跃表(skiplist)是一种有序数据结构,它通过在每个节点中维持多个指向其他节点的指针,从而达到快速访问节点的目的。
用普通方法,肯定很容易的。
考zval的,PHP的八种类型,本质只有一个结构。
三次握手和四次挥手,以及他们每步的状态。
这个问题最好能一步到位回答的全面的。一般都是有客户端告诉服务端,我这边东西发完了,可以断连接了么。但是如果客户端发完FIN服务端没有回复,就会重试,直到超过超时时间,就断了。服务端也一样,超过时间,服务端就断了。
典型的二叉搜索树。大学数据结构的基础题。
将文件拆分成若干个小文件,根据内容计算hash值,分散到不同文件。
核心方法是scandir,核心思想是递归。
这个题有点绕。考的还是COOKIE和SESSION的基础知识。服务端通过set-cookie命令来通知客户端保存cookie。
只要按照domain path 过期时间等规则 用header函数就可以实现。
分布式系统session,集中处理。按我们公司的架构,为了实现高可用和高容灾,提供一个分布式的验签服务。具体的可以看下redis的分布式服务架构。
区别主要在数据和索引的存储结构和存储方式上,以及对于事务的支持。
入门问题。这个问题有一个很大的坑,面试官可能会从这个问题下手问你一大堆问题。
以PHP为例:通常最简单的回答,从用户的电脑找到最近的DNS服务,然后解析到对应的IP 然后双方开始HTTP连接,然后发送请求信息,服务器拿到请求信息就开始准备回应的信息,中间要经过nginx转发到frstCGI(PHP-FPM),然后PHP开始解析框架,解析请求头部,找到对应的API,该查数据库查数据,该组装HTML组装HTML,完事了就重新返回给用户。用户拿到返回数据,浏览器开始渲染页面,JS开始加载。
explain,具体的请百度。(基本很少用性能分析语句。MYSQL的表设计上尽量冗余一部分字段,避免在MYSQL里处理大量的逻辑运算。我们是做PHP服务开发的,mysql语句能简单尽量简单。逻辑运算的地方可以在PHP里做。)
基础问题。本质还是考PHP数组的结构和特点。
结果是01235。PHP用数字索引和STRING索引差别还是很大的
这篇文章 要多读几遍。
问清楚是IO异步模型。还是AJAX这类的异步请求模型。差别非常大的。
狗东某风控研发必考题。
粗暴一点的方法 ini_set('memory_limit','-1'); 先把当前内存限制解除了 然后直接逐行统计。时间会非常的久。
(TIPS)不要中招。不要用常用思路来处理,10亿数据 你再怎么优化,全表求和,都是要死人的。
我们从设计上解决这个问题。只有一千个司机。我们可以做个简单哈希,分库分表,%求余数。保证这一千个司机分在一千个表里,每个人有每个人的单独表。引擎用MYSAIM,求表中数据的总数,效率飞快,遍历一千张表,求最大前二十即可。
没做过。其实题目表达不清楚。如果做过微信公众号开发,知道微信事件模型的XML数据结构,应该会好做一点。
鸟哥的文章要多读,多读。
递归。array_map传入一个回调函数。
65、php进程模型,php怎么支持多个并发守护进程模型(需要知道php-fpm的各种配置了)
这个三言两语说不清楚。
php-fpm 的配置并不多,常用的就更少了。
对称加密:我们俩共用一个秘钥,你加密,我解密。
非对称加密:我给你一个公钥,你加密完了,我还能有我的私钥把密文解开。但是你没有我的私钥。
二进制问题。薛定谔的老鼠。
一只老鼠有两个状态,死活,对应01。假设老鼠的个数为A,则有2^A>=10; A=4;
在trait继承中,优先顺序依次是:来自当前类的成员覆盖了 trait 的方法,而 trait 则覆盖了被继承的方法
我当时的答案是用链表来存,缓存命中就将该缓存移到链表头,然后链表尾就都是冷数据了。
我记得之前是在哪里看过这个设计,但我忘记在连接了,请知道朋友的把连接贴上来。
== 等于,不需要对比数据类型
=== 全等,需要对比类型
双引号串中的内容可以被解释而且替换,而单引号串中的内容总被认为是普通字符。
在单引号串中甚至反斜杠也失去了他的扩展含义(除了插入反斜杠\和插入单引号\')。所以,当你想在字串中进行变量代换和包 含\n(换行符)等转义序列时,你应该使用双引号。单引号串可以用在其他任何地方,脚本中使用单引号串处理速度会更快些。
static:如果在子类中重写了父类中的static方法、属性,父类就会去访问了子类的static方法
self: 是类内指针,不管子类有没有重写过父类中的方法、属性都指向本类的静态方法、属性
为什么建立TCP连接需要三次握手?
原因:为了应对网络中存在的延迟的重复数组的问题
假设client发起连接的连接请求报文段在网络中没有丢失,而是在某个网络节点长时间滞留了,导致延迟到达server。本来这是一个已经失效的连接报文,但是server接收到这个连接报文之后,误认为client发起了新的连接,于是向client发送确认报文段。此时因为没有了连接的3次握手,client不会对server的确认报文作出回应,也不会向server发送数据,server就以为连接已经建立,一直在空等client的数据,这样server的这一部分网络资源就被浪费了。
为什么断开TCP连接需要进行四次握手 ?
因为TCP连接是全双工的网络协议,允许同时通信的双方同时进行数据的收发,同样也允许收发两个方向的连接被独立关闭,以避免client数据发送完毕,向server发送FIN关闭连接,而server还有发送到client的数据没有发送完毕的情况。所以关闭TCP连接需要进行四次握手,每次关闭一个方向上的连接需要FIN和ACK两次握手。
在TCP连接中,当被动关闭连接的一方(图中client)发送的FIN报文到达时,被动关闭连接的一方会发送ACK确认报文,并且进入TIME_WAIT状态,并且等待2MSL时间段(MSL:maximum segment life)。这么做有下述两个原因:
被动关闭连接的一方(图中的server)在一段时间内没有收到对方的ACK确认数据包,会重新发送FIN数据包,因而主动关闭连接的一方需要停留在等待状态以处理对方重新发送的FIN数据包。否则他会回应一个RST数据包给被动关闭连接的一方,使得对方莫名其妙。
在TIME_WAIT状态下,不允许应用程序在当前ip和端口上和之前通信的client(这个client的ip和端口号不变)建立一个新的连接。这样就能避免新的连接收到之前的ip和端口一致的连接残存在网络中的数据包。这也是TIME_WAIT状态的等待时间被设置为2MSL的原因,以确保网络上当前连接两个方向上尚未接收的TCP报文已经全部消失。
比如上图在数组中表示成,1表示成陆地,0表示海洋:
单例模式又称为职责模式,它用来在程序中创建一个单一功能的访问点,通俗地说就是实例化出来的对象是唯一的。
所有的单例模式至少拥有以下三种公共元素:
它们必须拥有一个构造函数,并且必须被标记为private
它们拥有一个保存类的实例的静态成员变量
它们拥有一个访问这个实例的公共的静态方法
单例类不能再其它类中直接实例化,只能被其自身实例化。它不会创建实例副本,而是会向单例类内部存储的实例返回一个引用。
抽象的类不能被实例化。任何一个类,如果它里面至少有一个方法是被声明为抽象的,那么这个类就必须被声明为抽象的。被定义为抽象的方法只是声明了其调用方式(参数),不能定义其具体的功能实现。
G13《押品情况统计表》填报说明
本表根据《商业银行押品管理指引》制定,主要反映填报机构贷款及买入返售业务中押品价值及对应的融资余额的情况。
1.报表名称:押品情况统计表
3.填报机构:政策性银行(含开发银行)、大型商业银行(含)、股份制商业银行、城市商业银行、民营银行、农村商业银行、农村合作银行、农村信用合作社、村镇银行、外资法人银行、外国银行分行、企业集团财务公司、信托公司、金融租赁公司、汽车金融公司、消费金融公司。
4.报送口径、频度及时间:境内分支机构汇总数据,报送时间为季报第二批次(季后18日)。
5.报送方式:以电子报表形式报送银保监会。
7.四舍五入要求:金额保留两位小数。
8.填报币种:本表要求以本外币合计人民币填报。银行业金融机构将外币折算为人民币时,应按照报告期末最后一天国家外汇管理局公布的人民币对美元、欧元、日元和港元的基准汇价进行折算。美元、欧元、日元和港元等四种主要货币以外的其他货币对人民币的折算汇率,以报告期末最后一天美元对人民币的基准汇率与同一天上午9时国际外汇市场其他货币对美元汇率套算确定。
第三部分:具体说明及核对关系
A列至F列反映银行贷款业务的相关情况。其中A列至C列反映正常贷款情况(包含正常类贷款和关注类贷款),D列至F列反映不良贷款情况(包括次级类、可疑类和损失类贷款),正常/不良贷款划分以报告期末的贷款质量形态为准。本表中的贷款是指填报机构对借款人融出货币资金所形成的资产,主要包括短期贷款、中长期贷款、贸易融资、融资租赁、信用卡透支、各项垫款等,不含贴现及买断式转贴现。
G列至I列反映银行买入返售业务的相关情况。本表中买入返售的含义与G01《资产负债项目统计表》中[13.买入返售资产]含义保持一致,是指填报机构在返售协议下先买入再按合同约定价格返售金融资产的业务。
[A/D/G押品价值_起始估值]:是指填报机构在签订贷款/买入返售合约时,对客户所提供的抵质押品价值进行初次评估的结果。按照《商业银行押品管理指引》第17条要求,商业银行应遵循客观、审慎原则,依据评估准则及相关规程、规范,明确各类押品的估值方法,并保持连续性。原则上,对于有活跃交易市场、有明确交易价格的押品,应参考市场价格确定押品价值。采用其他方法估值时,评估价值不能超过当前合理市场价格。
[B/E/H押品价值_最新估值]:是指距报告期末最近一次的抵质押品评估价值。按照《商业银行押品管理指引》第18条要求,商业银行应根据不同押品的价值波动特性,合理确定价值重估频率,每年应至少重估一次。价格波动较大的押品应适当提高重估频率,有活跃交易市场的金融质押品应进行盯市估值。
[C/F贷款余额]:是指各类押品所对应的贷款余额情况。如押品与贷款无法一一对应,依据押品的最新估值对贷款余额按比例进行拆分。主要包括以下情形:
(1)当押品和贷款之间存在一对多的关系时,这些贷款视为一笔贷款进行处理。
例如,填报机构向某客户发放了一笔流动资金贷款100万和一笔项目贷款200万,均为正常贷款,以400万国债(最新估值)作为担保。则两笔贷款共计300万均计入[1.3.1C]中。
(2)当押品和贷款之间存在多对一关系时,按押品最新估值进行拆分。
例如,填报机构向某客户发放了一笔300万的贷款(分类为正常贷款),以最新估值为400万的厂房和200万的机器设备为抵押,进行拆分后,计入[ 3.2C经营性房地产]的金额为300*400/(400+200)=200万元,计入[4.2C机器设备]的金额为300*200/(400+200)=100万元。
(3)当押品和贷款之间存在多对多关系时,多笔贷款视为一笔贷款进行处理,同时按押品最新估值进行拆分。处理方式参见(1)和(2)。
(4)按照上述规则拆分后,如果押品对应的贷款同时包含正常和不良贷款,则将最新评估价值按照贷款余额占比分摊至各贷款合同(借据)。
(5)如果客户分多次提供押品,则根据当前的押品情况进行重新拆分。
(6)如果一批押品不仅涉及贷款还涉及表外融资,按照上述规则进行表内外拆分,表外部分押品扣除后再按上述规则进行表内贷款和押品的拆分。
例如,填报机构向某客户发放了一笔300万的贷款(分类为正常贷款),以最新估值为400万的厂房为抵押,原本300万贷款均计入[ 3.2C经营性房地产]。此后因厂房价值下跌至320万,客户追加80万的机器设备作为抵押,则根据拆分规则,计入[ 3.2C经营性房地产]的金额为300*320/(320+80)=240万元,计入[4.2C机器设备]的金额为300*80/(320+80)=60万元。
如果银行内部拥有更加精细的贷款与押品的匹配规则(例如综合考虑押品的变现顺序、变现能力、使用比例等方面),经报对应主监管员同意和备案后,可以按照自有规则进行处理。押品与贷款之间的匹配规则一经确定,不得随意进行更改。
[I.买入返售余额]:指填报机构在返售协议下先买入再按合同约定价格返售的票据、证券、贷款等金融资产所融出的资金余额。
[0.抵质押融资合计]:指填报机构向借款人融出资金的业务含有抵质押品的情况。拥有多种担保方式的,遵循抵(质)押优先原则。
[1.金融质押品合计]:包括现金及其等价物、贵金属、债券、票据、股票(权)/基金、保单、资产管理产品及其他金融抵质押品。
[1.1现金及其等价物]:指客户缴存的保证金、存单等现金类质押品。
[1.2贵金属]:指黄金、白银等贵金属。
[1.3债券]:指境内外其他机构发行的、约定在一定期限内还本付息的有价证券。其中,境内债券仅限在银行间市场和证券交易所市场发行或交易的债券。
[1.3.1 国债]:指中华人民共和国财政部代表中央政府发行的以人民币支付的国家公债,包括具有实物券面的有纸国债和没有实物券面的记账式国债。
[1.3.2 地方政府债]:指有财政收入的中央财政代理发行或地方政府自主发行的债券,包括地方政府一般债券和地方政府专项债券。该类债券也可由中央财政代理发行。
[1.3.3 央票]:指中国人民银行为调节商业银行超额准备金而向银行发行的短期债务凭证。
[1.3.4 政策性金融债]:指国家开发银行、中国进出口银行和中国农业发展银行在全国银行间债券市场、沪深交易所、商业银行柜台市场等公开交易场所发行的、按约定还本付息的金融债券。
[1.3.5 政府机构债券]:是指境内的汇金公司、铁路总公司、以及原铁道部等政府支持机构发行的债券。
[1.3.6 商业性金融债]:是指境内金融机构发行的债券。包括:(1)商业银行普通金融债、混合资本债、二级资本工具等;(2)、保险公司、财务公司、融资租赁公司、资产管理公司发行的债券;(3)金融企业短期融资券等。
[1.3.7 非金融企业债]:是指境内非金融企业所发行的债券。包括企业债,公司债,以及短期融资券、中期票据等的企业债务融资工具。
1.3.7.1-1.3.7.3项反映非金融企业债按评级划分的情况。包括[1.3.7.1 AA+(含)以上]、[1.3.7.2 评级在AA+至A之间]和[1.3.7.3 评级在A以下或无评级]三个子项。有债项评级的,以债项评级为准;没有债项评级的,可以取债券主体评级。对同一债券有多个评级结果的,以较低的评级为准。
[1.3.8 其他债券]:指其他以上未包括债券,包括资产支持证券、外国债券等。
[1.4票据]:指银行承兑汇票、商业承兑汇票等票据。
[1.5股票(权)/基金]:包括上市股票、非上市公司股权、基金等。
[1.5.1上市股票]:指在公开市场流通的股票。
[1.5.2非上市公司股权]:指持有的未上市公司股票或股权以及上市后禁止流通的股票。
[1.5.3基金]:包括公募基金和私募基金。公募基金是指受政府主管部门监管的,通过公开发售基金份额募集资金,有基金托管人托管,由基金管理人管理和运作资金,为基金份额持有人的利益,以资产组合方式进行证券投资的一种利益共享、风险共担的集合投资方式。私募基金以非公开方式向投资者募集资金设立的投资基金。
[1.6保单]:指保险公司保单(不含中国出口信用保险单)。
[1.7资产管理产品(不含公募基金)]:是指经金融监管部门同意,各类金融机构发行的资产管理类产品。按照《关于规范金融机构资产管理业务的指导意见》(银发[号)规定,资产管理产品的发行方主要履行投资管理的职能,不承担最终的偿付责任,也不提供任何形式的担保或垫付。包括但不限于非保本理财产品、信托产品、证券业资产管理产品、保险业资产管理产品以及其他资产管理产品。公募基金不在此项填报。
[1.8其他金融质押品]:指其他种类金融质押品。对于确实无法合理确定金融抵质押品种类的贷款或买入返售业务,例如与中央交易对手开展的三方回购业务,可以填报在此项。如果此项数额较大,应向主监管员书面说明原因。
[2.应收账款类押品合计]:包括普通应收账款、各类收费权及其他应收账款。应收账款是指权利人因提供一定的货物、服务或设施而获得的要求义务人付款的权利以及依法享有的其他付款请求权,包括现有的和未来的金钱债权,但不包括因票据或其他有价证券而产生的付款请求权,以及法律、行政法规禁止转让的付款请求权。
[2.1普通应收账款类]:指交易过程中产生的应收账款。如提供医疗、教育、旅游等服务或劳务产生的债权;销售、出租行为产生的债权,包括但不限于销售货物,供应水、电、气、暖,知识产权的许可使用,出租动产或不动产等。
[2.2各类收费权]:指各类收费权的贷款。包括但不限于能源、交通运输、水利、环境保护、通讯、市政工程等基础设施和公用事业项目收益权。
[2.3其他应收账款]:包括提供贷款或其他信用活动产生的债权,以及其他以合同为基础的具有金钱给付内容的债权。
[3.房地产类押品合计]:包括居住用房地产、经营性房地产、居住用建设用地使用权、经营性建设用地使用权、房地产类在建工程、其他房地产类押品。其中:经营性房地产包括商业用房、工业用房、办公用房等。试点中的农村承包土地经营权填入经营性建设用地使用权,农村住房财产权填入居住用建设用地使用权。
[4.其他类押品合计]:包括存货、仓单、提单、机器设备、交通运输设备、资源资产、知识产权及其他以上未包括的押品。
[4.2机器设备]:包括通用设备,专用设备,电气设备,电子产品及通信设备,仪器仪表、计量标准器具及量具、衡器等。
[4.3交通运输设备]:包括车辆、飞行器、船舶及其他交通运输设备。
[4.4资源资产]:包括采矿权、探矿权、林权等。
[4.5知识产权]:包括专利权、商标权、著作权及其他类知识产权。
[附注1:保证贷款合计]:指填报机构向借款人提供的以保证为唯一担保方式的贷款业务。
[附注2:信用贷款合计]:指填报机构向借款人提供的无任何担保方式的贷款业务。
加入1104全国交流群
数据治理爱好者活跃社群
注意:本文为公告节选,部分内容省略,完整内容请查看交易所发布的PDF全文原文。
原标题:升禾环保:2020年年度报告
2020年1月,公司荣获国家知识产权局认
定为国家知识产权优势企业,有效期3年。
2020年5月,公司成功中标隆回县环卫作
业市场化运作采购项目,服务期限3年,合
2020年4月,公司荣获广西壮族自治区新
型冠状病毒感染肺炎疫情防控工作领导小
组指挥部颁发的“支持疫情防控工作,助力
坚决打赢疫情防控阻击战”荣誉证书。
2020年5月,公司成功中标柳州克里湾水
乐园年保洁外包采购,服务期限
2020年6月,公司成功中标来城第四轮环
卫市场化保洁项目,服务期限3年,合同
2020年6月,公司荣获中共柳州市委统战
(-----已省略余下内容,完整内容请查看交易所发布的PDF全文原文----)