我读过Tree是Graphs的特例.图可以是定向的或不定向的.但是如果我们认为树作为数据结构是指向还是无向图?
我正在使用永远的js来保持我的节点服务器在AWS EC2上全天候运行.
我用这个命令
forever start index.js
Run Code Online (Sandbox Code Playgroud)
但是,我注意到有一段时间它会随机停止进程并且我的网站出现故障.我必须手动ssh到我的服务器再次运行它:
forever restartall
Run Code Online (Sandbox Code Playgroud)
然后它会备份.有没有办法我可以定义超时,假设服务器/网站在5秒内没有响应200,然后自动重启所有永久进程?
我是新手,如果有人能为我的案例一步一步地举例,那就太棒了.
我正在使用 Forever JS 来持续运行我的节点 JS 服务器,但是偶尔服务器会崩溃并且站点会关闭一段时间。
我查看了永远的日志,这里显示:
FATAL ERROR: CALL_AND_RETRY_LAST Allocation failed - process out of memory
<--- Last few GCs --->
35251732 ms: Mark-sweep 687.6 (219898.0) -> 687.6 (527360.0) MB, 13522.0 / 0 ms [allocation failure] [scavenge might not succeed].
35267178 ms: Mark-sweep 687.6 (527360.0) -> 687.6 (940128.0) MB, 15445.8 / 0 ms [allocation failure] [scavenge might not succeed].
35282842 ms: Mark-sweep 687.6 (940128.0) -> 687.6 (1352896.0) MB, 15664.3 / 0 ms [last resort gc].
35298326 ms: Mark-sweep 687.6 …Run Code Online (Sandbox Code Playgroud) 我已经提到了select2 jquery插件提供的这个文档. http://ivaynberg.github.io/select2/
但是,当我使用此代码来限制用户一次可以选择的选项数量时:
$(document).ready(function(){
$(".select2").select2({ maximumSelectionSize: 2 });
});
Run Code Online (Sandbox Code Playgroud)
以下是select标签的html:
<select id="store-name" name="state[]" class="select2-select-00 span6" multiple size="5"
data-placeholder="Store" style="height:25px;">
<?php foreach ($this->Store->get_all_stores_names() as $row) {
//print_r($row);
echo '<option value="' . $row->name . '"> ' . $row->name . '</option>';
}
?>
</select>
Run Code Online (Sandbox Code Playgroud)
当我尝试限制它时,我在控制台中收到此错误,"Uncaught TypeError:Object [object Object]没有方法'select2'".为什么?我的意思是select2工作正常,这意味着它正在加载js文件,那么为什么我无法限制它?谢谢
我的页面是https,但我在AJAX中调用的API网址是http.我无法得到AJAX响应.混合内容:" https:// localhost:8443/examples/demo.html "页面是通过HTTPS加载的,但请求了一个不安全的XMLHttpRequest端点" http://www.earthtools.org/timezone-1.1/40.71417/- 74.00639?_ = 1431270529277 '.此请求已被阻止; 内容必须通过HTTPS提供.
我该如何解决这个问题?
HTTPS的HTTPS版本不存在.我怎样才能从我的HTTPS启用页面调用.我希望我的页面是HTTPS,这非常重要.
有帮助吗?
我有一个使用 socket io的简单聊天应用程序。非常类似于socket io chat 官方demo。每当用户最小化页面或打开另一个应用程序或页面脱离焦点时,Socket io 就会在所有移动浏览器上 ping 超时。
在我的 Web 应用程序中,每当用户从移动设备上的 chrome/firefox/safari 浏览器单击文件输入上传时,它都会打开电话对话框以从厨房中选择文件以进行选择和上传。在此期间(我的聊天页面由于可见性而失去焦点),当用户搜索文件时,恰好在 30 秒后,socket io 客户端发出 ping 超时,人员聊天断开连接。
在我的应用程序级别,如果 socket io 由于任何原因进入 ping 超时,我正在重新连接,但这并不能解决我的问题,因为如果用户在 31 秒后单击 1 个文件,则不会发送该图像文件聊天,因为套接字 io 在此期间超时,当用户的焦点重新回到浏览器选项卡上时,需要几秒钟才能重新连接。因此文件上传操作丢失,因为文件已上传但套接字 io 连接处于 ping 超时状态。所以当它重新连接时,选定的文件上传永远不会发送给其他连接的用户。
我尝试使用此代码检测何时用户的页面焦点已关闭,
document.addEventListener("visibilitychange", onchange);
Run Code Online (Sandbox Code Playgroud)
然后一旦页面没有聚焦,我使用 setinterval 将我的自定义心跳事件发送到我的服务器代码。(只是为了防止 socket io 与服务器通信以保持连接有效)。这适用于桌面浏览器,但在所有移动浏览器上,只要用户的页面不在焦点上,即如果用户最小化浏览器,则打开一个新应用程序,或转到选择文件上传屏幕,套接字 io 在 30 秒后超时,有时甚至更快。
我的客户端js代码:
var beating;
//function to detect if user gone out of page
//startSimulation and pauseSimulation defined elsewhere
function handleVisibilityChange() {
//socket = this.socket;
if (document.hidden) { …Run Code Online (Sandbox Code Playgroud) 我正在做一个 ajax 调用来检索存储在 sql 数据库中的商店位置的纬度和经度。这是我的 ajax 调用并返回所有 lats 和 lngs 的 json 对象。
$.ajax({
type:"GET",
dataType:"json",
url:"<?php echo site_url("sandbox_faizan/get_coordinates") ?>",
success: function(result)
{
my_arr = result;
for(var i=0;i<result.length;i++)
{
store_points(result[i].lat,result[i].lng)
}
});
Run Code Online (Sandbox Code Playgroud)
现在我已将此 json 对象存储在我自己的数组对象中,该对象将用于在地图上添加标记。这是在加载地图之前在此处完成的。
<script type="text/javascript">
var point=[];
point = [
new google.maps.LatLng(37.569309, -122.32617500000003)
];
function store_points(lat,lng)
{
//used to show markers
point = [
new google.maps.LatLng(lat,lng)
];
}
var map;
var mapOptions = {
center: new google.maps.LatLng(51.3, -1.80),
zoom: 6,
mapTypeId: google.maps.MapTypeId.ROADMAP
};
var pinImage = new google.maps.MarkerImage("http://chart.apis.google.com/chart?chst=d_map_xpin_letter_withshadow&chld=pin_star|%E2%80%A2|CC3300|000000|FF9900", …Run Code Online (Sandbox Code Playgroud) 我在http://talkwithstranger.com/ 上运行我的应用程序,并将它部署在 AWS EC2 上。我用这个命令
sudo nohup node index.js &
Run Code Online (Sandbox Code Playgroud)
即使我关闭终端并退出我的 SSH,也要继续运行我的 Node JS 服务器。
但是,每次醒来2天后,我发现节点服务器本身会自动停止。我通过使用检查了正在运行的进程
ps -ef
Run Code Online (Sandbox Code Playgroud)
我的节点脚本不存在。
谷歌浏览器说未找到站点 DNS,因为 NodeJS Express 当然没有运行来提供我的 html 文件,但为什么它会自行停止?
是什么导致我的服务器在每 2 天后意外关闭?我必须nohup再次手动运行才能再次运行它。
nohup 是否有过期时间之类的?
我分别从两个数组中的数据库中检索了两个用户的记录.这些记录是关注其他人的记录,就像在twitter中一样.由于两个用户可能跟随不同数量的人.所以两个数组的长度是不同的.我创建了一个新的数组来存储普通人(两个用户都跟着的人).如何获得两个用户的%相似度.让我们说如果两个用户有5个共同的关注者,他们有2个共同2个用户的相似性.
foreach($common as $row){
//do events
echo $row['name']."<br>";
$count_common++;
}
echo "total common ".$count_common;
$similarity = (count($common)/(count($user1_follows))*100);
Run Code Online (Sandbox Code Playgroud)
上述公式不计算正确的结果,因为它基于具有相同长度的数组.这是一个相关的问题,我得到两个数组在PHP中的相似性百分比
我刚刚开始学习NodeJS和Socket.io ...直到现在我有这个演示代码,来自官方socket.io网站:
我能够获得连接的每个用户(套接字)的唯一客户端ID,我仍然想弄清楚,如何让我的代码在有人运行应用程序时只与1个随机用户连接.我只是想随便聊聊像http://www.omegle.com/
只有2个用户应该随机连接并相互聊天,直到他们重新运行应用程序,如果他们回来,他们应该与在线队列中的其他人联系.
有类似行为我需要做哪些改变?
到目前为止,这是我的代码:
专家的代码示例或指导对像我这样的菜鸟真的很有帮助.
更新:添加了客户端站点代码main.js
$(function() {
var FADE_TIME = 150; // ms
var TYPING_TIMER_LENGTH = 400; // ms
var COLORS = [
'#e21400', '#91580f', '#f8a700', '#f78b00',
'#58dc00', '#287b00', '#a8f07a', '#4ae8c4',
'#3b88eb', '#3824aa', '#a700ff', '#d300e7'
];
// Initialize variables
var $window = $(window);
var $usernameInput = $('.usernameInput'); // Input for username
var $messages = $('.messages'); // Messages area
var $inputMessage = $('.inputMessage'); // Input message input box
var $loginPage = $('.login.page'); // The login …Run Code Online (Sandbox Code Playgroud) node.js ×5
javascript ×4
ajax ×2
amazon-ec2 ×2
forever ×2
process ×2
socket.io ×2
api ×1
arrays ×1
chat ×1
compare ×1
express ×1
google-maps ×1
graph ×1
http ×1
https ×1
jquery ×1
json ×1
limit ×1
nohup ×1
percentage ×1
php ×1
random ×1
restart ×1
settimeout ×1
similarity ×1
sockets ×1
tree ×1