我正在尝试编写一个bash脚本,由cron任务运行,在某些情况下会向我发送一封电子邮件.
为了尝试让sendmail使用我的Sendgrid SMTP设置,我使用以下内容编辑了/etc/postfix/main.cf文件:
smtp_sasl_password_maps = static:<username>:<password>
smtp_sasl_security_options = noanonymous
smtp_tls_security_level = may
smtp_tls_security_level=encrypt
header_size_limit = 4096000
relayhost = [smtp.sendgrid.net]:587
Run Code Online (Sandbox Code Playgroud)
我使用sudo /etc/init.d/postfix restart重新启动了postfix
并尝试使用以下命令从命令行发送电子邮件:
sendmail my@email.com </tmp/email.txt
这导致以下输出:
您在/ var/mail/ubuntu中有新邮件
为什么sendgrid不使用我在main.cf中指定的Sendgrid SMTP详细信息发送我的电子邮件?
请注意,这个问题仅与sendmail有关,我不想安装其他SMTP客户端和应用程序,它需要按原样工作.
我有一个MySQL更新脚本我想从命令行运行,但我希望能够将一个阶段域变量传递给脚本.
我知道这不起作用,但这是我描述我想要做的最好的方式:
$ -uroot -hlocalhost mydatabase --execute "SET @domain = 'mydomain.dev' " < ./sql/update_domain.sql
Run Code Online (Sandbox Code Playgroud)
在脚本内部,我使用@domain变量来更新配置表中的一些配置变量,使用如下命令:
UPDATE my_cfg SET value = @domain WHERE name = 'DOMAIN';
Run Code Online (Sandbox Code Playgroud)
基本上我想在update_domain.sql文件中为SET @domain添加前缀.
我有什么想法可以纠正我的做法?
我想查看SQS的消息,他们让我的魔豆弹性intstance拾起sqsd之前.有没有办法,一旦ssh进入实例,sqsd可以作为服务一起停止/启动?
我有以下代码:
$facebook = new Facebook(array(
'appId' => '###',
'secret' => '###'
));
$user = $facebook->getUser();
Run Code Online (Sandbox Code Playgroud)
$ user总是0,我的AppId和Secret都是100%正确的.我究竟做错了什么?
我有兴趣使用PHP,JavaScript和新的HTML 5 canvas对象进行外汇交易试验.我看了一下,但想知道我可以用于外汇交易的JavaScript API.
谁能推荐任何东西?
我有一个使用 PIC32 微控制器构建的复合 USB + CDC 设备,我正在尝试连接到该设备并将一些数据从我的 Mac 发送到 CDC 数据接口端点。
我知道电路可以 100% 工作,因为该设备同时注册为 HID 操纵杆,并且我能够使用 Zoc 终端在 /dev/tty.usbmodemfa132 上连接到该设备。我可以使用Zoc发送命令,并通过使电路上的一些 LED 闪烁来查看我的 MCU 对这些命令的响应。
我在 Mac OS X Mavericks 上运行它,但在几周前在 Mountain Lion 上我放弃了一个类似的例子时遇到了同样的问题。
我的代码如下所示:
// Includes -----------------------------------------------------------------------------------------------------------
#include <stdbool.h>
#include <stdio.h>
#include <stdlib.h>
#include <libusb-1.0/libusb.h>
#include <unistd.h>
// Defines ------------------------------------------------------------------------------------------------------------
#define VID 0x04d8
#define PID 0x005e
#define CDC_DATA_INTERFACE_ID 2
// Function Declarations ----------------------------------------------------------------------------------------------
void print_device(libusb_device *device);
void send(libusb_context *usb_context, uint16_t vid, uint16_t pid);
// Function Definitions -----------------------------------------------------------------------------------------------
/** …Run Code Online (Sandbox Code Playgroud) 将TypeScript转换为JavaScript时,我的理解是TypeScript类型信息会丢失,并且诸如反射之类的功能只能以非常有限的方式工作。我们在运行时使用JavaScript反射,这可以理解地限制了有关TypeScript类型的“知识”。
是否可以在运行时检索TypeScript类型信息?
让我们看一下codepen.io上的以下代码片段:
class Book {
public title: string;
public isbn: string;
}
class Author {
public name: string = '';
public books: Book[] = [];
constructor() {
const r = Reflect.getOwnPropertyDescriptor(this, 'books');
console.log(`typeof: ${typeof this.books}`);
console.log(`constructor: ${this.books.constructor.name}`);
console.log(r);
}
}
const author = new Author();
Run Code Online (Sandbox Code Playgroud)
日志输出“对象”,“数组”和:
Object {
configurable: true,
enumerable: true,
value: [],
writeable: true
}
Run Code Online (Sandbox Code Playgroud)
我想遍历Author的属性,并确定Author.books的类型或任何属性。我希望能够在运行时确定Author.books是Books数组。仅仅知道它是一个对象或数组对我要实现的目标毫无帮助。
有什么想法可以实现吗?
我正在尝试为实时3D游戏创建一个C++插件.虽然我相信对UDP的理论,它是如何工作的,它的优点和缺点有一个坚定的把握,但我关注的主要问题是性能,可扩展性和可能的统计数据.我知道,在UDP甚至TCP方面,我可能只知道海洋的价值下降.
问题:
在某种情况下,典型的专用服务器在任何时候都能够应对多少玩家.
现在为场景......
让我们假设我们有一个MMORPG游戏,所有玩家都可以在"游戏世界"的任何地方.每个人都向同一个服务器/服务器中心发送和接收数据,因为每个人都必须能够......在他们的路径最终交叉时看到并与其他人互动.这是一个实时的第一人称游戏,所以玩家的位置必须是最新的,非常及时.
让我们说我们有1000名(甚至10000名)在线玩家......
这里需要做三件事:
每个玩家通过UDP将其数据流式传输到游戏服务器,例如每秒14次发送.简而言之,这些数据包括每个玩家的身份,地点和内容.发送的数据已经过标准化,并针对大小和速度进行了优化,以鼓励最小的带宽使用.
服务器每秒14次接收这些分组多达1000个(用于演示目的的非虚构图),因此每秒处理14 000个分组.该处理阶段通常涉及更新中央存储器数据结构,其中玩家旧的x,y,z位置数据将用他的新位置和时间戳更新.服务器上的此数据结构包含整个游戏世界中所有玩家的所有数据.
服务器(可能是一个单独的线程,甚至可能是一个单独的机器)现在需要将数据包广播给所有其他玩家,因此他们可以更新他们的屏幕以显示地图上的其他玩家.这也是每秒发生14次.(其中14可能通常是动态数字,根据使用的CPU容量,繁忙的CPU,较少的帧速率而反之亦然).
重要的是:对于玩家X,只有他位置的视觉范围内的其他玩家的数据被发送到相应的玩家.因此,如果玩家Y在2英里外,他的数据需要发送到X,但如果玩家Z在行星的另一边,他的数据不会被分派到X作为节省带宽的尝试.这当然涉及更多的处理,因为必须使用最有效的索引解决方案来迭代和过滤数据.
现在我担心的是,从客户端机器发送数据包,将其送入服务器RAM,稍微处理更新数据,并选择性地将信息广播给其他玩家,需要时间.这意味着,服务器能够处理某个阈值,是的,取决于我的实现的有效性,所用硬件的速度和能力,当然还有其他外部因素,如互联网速度,交通和nr.太阳耀斑每秒击中地球......开个玩笑.
我试图从其他人那里了解,他们已经完成了这个过程,陷阱是什么,以及在创建多人插件时我可以期待的典型表现.
我可以很容易地说:"我想要同时为同一台服务器上的10000个人提供服务",你可能会说:"每个服务器100个是更现实和可能的数字."
所以我知道我可能需要提出一个多服务器/云计算中心来处理我的数千个请求和调度,在多台机器上分配处理负载.所以我可能有一些机器只处理接收数据,一个巨大的中央盒子,就像所有接收和调度机器以某种方式共享的内存数据库,当然还有一系列调度机器.
显然,存在技术限制,我真的不知道会发生什么以及它们是什么.并且在问题上抛出额外的CPU和服务器盒将不会成功地解决问题,因为机器之间的更多相互通信也将使该过程减慢一些.我认为你投入的CPU越多,可能会降低效率甚至在某个阈值时反转CPU工作效率.
可以而且我应该考虑P2P(Peer To Peer)进行多人游戏!
我是否现实地说我能够在任何时候满足2500名玩家的需求?
几年后可以扩展到10000名玩家吗?
我知道这个问题很长,所以请接受我真诚的道歉.
我需要检查由Field.getType()检索的反射Field类型的实例是否是扩展特定类GenericModel的另一个类的实例.
我正在尝试下面的伪代码片段:
if(field.getType() "is_a_superclass_of" GenericModel) {
... then do something with it
}
Run Code Online (Sandbox Code Playgroud)
我该怎么做呢?
当我尝试这样的事情:
field.getType().isAssignableFrom(Language.class)
Run Code Online (Sandbox Code Playgroud)
我得到一个结果,true,这意味着它是Language类,它扩展了GenericModel.然而;
field.getType().isAssignableFrom(GenericModel.class)
Run Code Online (Sandbox Code Playgroud)
返回false?
field.getType() == "za.co.company.package.model.Language"
Run Code Online (Sandbox Code Playgroud) 我正在尝试编写GLSL片段着色器,该着色器在平坦的地平面上呈现参考网格。我正在使用BabylonJS创建一个WebGL应用程序。
可以在此处查看代码:
http://www.babylonjs.com/cyos/#IBHRN#2
#extension GL_OES_standard_derivatives : enable
precision highp float;
varying vec2 vUV;
void main(void) {
float divisions = 10.0;
float thickness = 0.01;
float delta = 0.05 / 2.0;
float x = fract(vUV.x / (1.0 / divisions));
float xdelta = fwidth(x) * 2.5;
x = smoothstep(x - xdelta, x + xdelta, thickness);
float y = fract(vUV.y / (1.0 / divisions));
float ydelta = fwidth(y) * 2.5;
y = smoothstep(y - ydelta, y + ydelta, thickness);
float c = clamp(x …Run Code Online (Sandbox Code Playgroud) babylonjs ×1
c ×1
cdc ×1
command-line ×1
cron ×1
email ×1
facebook ×1
glsl ×1
java ×1
libusb ×1
libusb-1.0 ×1
multiplayer ×1
mysql ×1
networking ×1
reflection ×1
sendmail ×1
shader ×1
trading ×1
typescript ×1
udp ×1
usb ×1
webgl ×1