1.支付宝支付回调地址如果延迟,怎么处理
2.怎么分析sql查询速度
3.你是如何用php做app接口的,答:返回json. 他说 这太不专业了...
回复内容:
1.支付宝支付回调地址如果延迟,怎么处理
2.怎么分析sql查询速度
3.你是如何用php做app接口的,答:返回json. 他说 这太不专业了...
这几个问题回答起来没什么意思,我主要分析分析面试官为什么问你这几个问题。
问题 1
主要应该是想了解你对调用其他程序或接口时出现的异常情况是如何处理的,毕竟程序的运行并不总是一帆风顺,如果由于其他的接口出现了问题,而你没有处理好这些问题继而引发你写的程序出错或崩溃,那确实不是一个优秀的程序员所做的。程序员不仅应该了解用户按常理出牌,按既定路线完成程序的情况,还应该做好发生各种异常情况的处理。
问题 2
主要应该是想了解你是怎样评估你写的程序的,是通过怎样的手段了解的程序的运行情况,是如何优化你的程序的。实现功能并不是程序员的唯一目标,在实现功能的情况下做一个优秀的、高效的程序也是一项艰巨的工程。
问题 3
主要应该是想了解你对程序体系结构,或者说是架构的理解,程序不是简单的代码堆积,是有思想线路支撑,有模块协作分工的。作为程序员,虽然可能不会去实际写某一块的东西,但是至少应该了解这些模块的功能以及所有模块之间的联系和他们是如何协作工作的。就好比实现一个接口,你需要处理输入,进行逻辑判断,数据库操作,遇到错误的响应,返回结果等等,这里每一块都是相当细致的。
路过了,简单说一下自己脑海中最直接的想法。一家之言,欢迎拍砖。
第一个问题:
感觉面试官应该是考察题主对与程序中异常和错误的解决方案,我觉得以前三点为必填:
1.记录日志;
2.将失败支付放入失败队列或数据库管理;
3.重现问题,找到原因并想办法规避;
第二个问题:
之前面试的时候同样遇到过,不知道这个理想的答案是什么?路过的大神求帮忙说一下;
我之前提的问题
第三个问题:
APP接口,各种接口什么的,我估计题主没说到重要的一点:RESTful
我估计会这样说:
1.整个系统采用
RESTful架构模式
;
2.部分涉及到权限的业务采用类似微信Access_Token
机制;
3.接口调用次数限制等管理,日志相关记录;
BalaBala ....
好吧,答完之后才发现楼上的哥们已经提到了 RESTful 。-_-
记得当时毕业的时候给我们讲面试相关知识的老师说,回答面试官的问题尽量详细,不要太简洁,面试官既然面试你是想听你说,不是要你听你回答yes or no。所以,如果可以的话,尽量认真详细的回答。app接口返回Json这种回答方式,会让对方觉得你回答问题不认真,也没有重视这个问题。
app接口返回json有错吗???
我是学生党,想了解
问答是为了考察你解决问题的思路而不是要最重答案,所以要说的详细点 api接口虽然最终返回是json,但面试官更想知道处理接口的整个流程,涉及到很多点。加密 认证 错误处理 缓存等
一:我也不太清楚延迟怎么办,懂得人可以顺便回答一下我谢谢你。
二:explain,profiling然后可以顺带讲述优化的关键点,例如缓存,服务器配置。
三:关键词应该在restful,json,加密,安全,错误处理,可以的话加上文档。
简单阐述一下这几样的开发流程就好。
json接口不专业?
restful不是Json吗?
我觉得东西设计 没有专业 不专业 只有设计的合理不合理 适合不适合当前的业务~
1、异步延迟还是会经常出现的,这个时候可以采取主动查询的方案。由系统定时或者用户触发查询支付状态接口。当然这个接口要谈。
2、explain
3、这个你回答的也太简单了,json只是说交互的数据格式。协议、安全、性能,每个点都能扯上几句起码代表还算比较了解的。
这个延迟太难处理了,主动查询,几乎没法判断对方是否支付了
问题一处理方法是,异步回调、同步回调同时使用。然后主动查询自己数据库里的状态。
1、异步回掉延迟,一般使用主动轮询查询,获取返回结果
2、explain 查看type类型和ref等级
3、接口架构啊,看看restful api
问的问题都比较简单嘛,还没往深入问,应该是问题顺序是一个比一个简单,到问题三基本的想法是跟着面试者的思维走了。

php把负数转为正整数的方法:1、使用abs()函数将负数转为正数,使用intval()函数对正数取整,转为正整数,语法“intval(abs($number))”;2、利用“~”位运算符将负数取反加一,语法“~$number + 1”。

实现方法:1、使用“sleep(延迟秒数)”语句,可延迟执行函数若干秒;2、使用“time_nanosleep(延迟秒数,延迟纳秒数)”语句,可延迟执行函数若干秒和纳秒;3、使用“time_sleep_until(time()+7)”语句。

php除以100保留两位小数的方法:1、利用“/”运算符进行除法运算,语法“数值 / 100”;2、使用“number_format(除法结果, 2)”或“sprintf("%.2f",除法结果)”语句进行四舍五入的处理值,并保留两位小数。

判断方法:1、使用“strtotime("年-月-日")”语句将给定的年月日转换为时间戳格式;2、用“date("z",时间戳)+1”语句计算指定时间戳是一年的第几天。date()返回的天数是从0开始计算的,因此真实天数需要在此基础上加1。

php字符串有下标。在PHP中,下标不仅可以应用于数组和对象,还可应用于字符串,利用字符串的下标和中括号“[]”可以访问指定索引位置的字符,并对该字符进行读写,语法“字符串名[下标值]”;字符串的下标值(索引值)只能是整数类型,起始值为0。

方法:1、用“str_replace(" ","其他字符",$str)”语句,可将nbsp符替换为其他字符;2、用“preg_replace("/(\s|\ \;||\xc2\xa0)/","其他字符",$str)”语句。

在php中,可以使用substr()函数来读取字符串后几个字符,只需要将该函数的第二个参数设置为负值,第三个参数省略即可;语法为“substr(字符串,-n)”,表示读取从字符串结尾处向前数第n个字符开始,直到字符串结尾的全部字符。

php判断有没有小数点的方法:1、使用“strpos(数字字符串,'.')”语法,如果返回小数点在字符串中第一次出现的位置,则有小数点;2、使用“strrpos(数字字符串,'.')”语句,如果返回小数点在字符串中最后一次出现的位置,则有。


Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

AI Hentai Generator
Generate AI Hentai for free.

Hot Article

Hot Tools

Safe Exam Browser
Safe Exam Browser is a secure browser environment for taking online exams securely. This software turns any computer into a secure workstation. It controls access to any utility and prevents students from using unauthorized resources.

PhpStorm Mac version
The latest (2018.2.1) professional PHP integrated development tool

MinGW - Minimalist GNU for Windows
This project is in the process of being migrated to osdn.net/projects/mingw, you can continue to follow us there. MinGW: A native Windows port of the GNU Compiler Collection (GCC), freely distributable import libraries and header files for building native Windows applications; includes extensions to the MSVC runtime to support C99 functionality. All MinGW software can run on 64-bit Windows platforms.

WebStorm Mac version
Useful JavaScript development tools

mPDF
mPDF is a PHP library that can generate PDF files from UTF-8 encoded HTML. The original author, Ian Back, wrote mPDF to output PDF files "on the fly" from his website and handle different languages. It is slower than original scripts like HTML2FPDF and produces larger files when using Unicode fonts, but supports CSS styles etc. and has a lot of enhancements. Supports almost all languages, including RTL (Arabic and Hebrew) and CJK (Chinese, Japanese and Korean). Supports nested block-level elements (such as P, DIV),
