我正在寻找有关广告服务器的一些信息.
我正在为客户工作,而且代理机构已经构建了一小部分jQuery来启动DoubleClick Floodlight代码,但由于某种原因,代码无效:
<script type="text/javascript">
$(function () {
//var origOnClick = $('#trackingButton').attr("onclick");
$('#trackingButton').click(fireFloodlight);
function fireFloodlight() {
if (Page_IsValid) {
var axel = Math.random() + "";
var a = axel * 10000000000000;
$("body").append('<img src="https://ad.doubleclick.net/activity;src=2499215;type=axa_l124;cat=lpg_g263;ord=' + a + '?" width="1" height="1" alt=""/>');
//eval(origOnClick);
}
}
});
</script>
Run Code Online (Sandbox Code Playgroud)
对我来说,这个脚本看起来很好,但在现场环境中," ad.doubleclick.net" 的调用永远不会发生?任何帮助将非常感激.奇怪的是,这个标签一直工作到本周末,但现在还没有录制任何动作?
编辑:我做了一个console.log(Page_IsValid)返回True.
编辑:这是有问题的按钮的HTML:
<input type="submit" name="ctl00$ctl00$ctl00$BodyPlaceHolder$BodyPlaceHolder$WizardContentPlaceHolder$WizardCollectBasicSMEInfo$trackingButton" value="Get your quick quote" onclick="javascript:WebForm_DoPostBackWithOptions(new WebForm_PostBackOptions("ctl00$ctl00$ctl00$BodyPlaceHolder$BodyPlaceHolder$WizardContentPlaceHolder$WizardCollectBasicSMEInfo$trackingButton", "", true, "Form", "", false, false))" id="trackingButton" class="button" />
Run Code Online (Sandbox Code Playgroud) 我有一些后端服务器位于两个不同的数据中心(美国和欧洲).这些服务器只是在提供广告CPM.
除此之外,我还有大而肥的主MySQL服务器,为广告客户的广告系列提供资金余额.同样,所有广告系列都在提供CPM.
对于任何后端提供的每次展示,我都必须根据展示价格减少广告系列的余额.
例如,每次展示的价格为1美分.后端A已经实现了50次展示,并将减少50美分的资金余额.支持B已经提供了30次印象,它将减少30美分的货币余额.
所以,我看到的主要问题是:
后端每秒提供大约2-3K的展示次数.因此,在MySQL中飞行中减少货币余额并不是一个好主意.
后端位于美国和欧盟数据中心.MySQL主服务器位于美国.网络延迟可能是一个问题[欧盟后端] < - > [美国大师]
我看到可能的解决方案:
使用Cassandra分布式计数存储.我会尽可能地意识到这个解决方案.
通过后端保留部分资金.例如,后端A连接到master并尝试保留$ 1.由于$ 1被保留并本地存储在后端(Redis例如本地),因此以光速递减它是没有问题的.我看到的主要问题是如果后端从交付方案中被禁用(从平衡器"断开"),则从后端返回主服务器.无论如何,它似乎是一个非常好的解决方案,并将允许留在当前的技术堆栈.
有什么建议?
UPD:一个重要的补充.提供高精度的广告展示并不是那么重要.我们可以提供超出要求的展示次数,但绝不会少.
我正处于一个项目的中间,我们已经创建了用于处理Grails广告活动的后端,我正在尝试找出创建广告服务器部分的最佳方法.即即将向最终用户(浏览器)提供实际广告的部分.
在我的前三个项目中,我一直在使用Grails,我非常喜欢它,因为它通过Spring和Hibernate得到了Java社区的快速开发和良好支持.但是,Grails仍然存在一些性能问题,我不确定它是否适合这项任务.我一直在寻找其他选择,但无法决定走哪条路.服务器需要能够每秒处理大约几千个请求,并且需要强大.DB结构如下(简化):
Ad ==> site, position, percent of view (percent of time the ad is shown)
Run Code Online (Sandbox Code Playgroud)
基本上,广告服务器需要从数据库中获取特定网站和位置所需的行,并选择要显示的广告(取决于百分比).
贝娄是我正在考虑的不同选择(所有这些都应该有多个实例并使用负载均衡器).
任何建议或建议都受到热烈欢迎.
我想在我的应用程序底部显示一个视图,以显示广告,从我自己的Linux服务器获取.
在重要的一点是,我想在服务器端我自己的控制面板.因此,我无法使用AdMob,Google Ads SDK,或者每个没有开源服务器端面板的SDK.
我搜索得太多了,发现了很多开源项目(客户端和服务器端),但我很困惑.
1-Whats是publisherId?2 - 我可以从自己的服务器上获取广告吗?
两边都有开源库吗?(客户端和服务器)?或者如果没有,使用哪个开源库我可以从我自己的服务器获取广告?
我想锁定 MySQL 数据库中的一些字段/列,这有可能吗?
Backgorund:我们正在使用 Revive,也称为 OpenX(当然是最新版本),但它一直被黑客入侵。尤其是田野prepend和append在ox_zone表中。
我们已经为保护系统所做的工作:
adxmlrpc.php因为它被称为攻击者的入口点但有时列prepend和append被破坏,所以我认为如果我们可以锁定这些字段或将它们设置为只读会很棒。
但我当然愿意接受任何其他解决方案。
我已经下载了开源Android应用程序的源代码.我有大约2000个.我希望对Android应用程序使用的广告库进行分析.我有2个问题,
android static-analysis advertisement-server android-library android-lint
我试图懒惰加载一些广告服务器代码...
在页面上,我现在有这个:
<div class="ad">
<span>pos_1</span>
</div>
Run Code Online (Sandbox Code Playgroud)
然后我通过并删除应该在页面上的所有广告,调用他们的javascript包含文件,它给了我这个可爱的混乱:
function do_ad(pos){
switch(pos){
case 'pos_1':
document.write('first ad text');
document.write('first ad more text');
//and so on for many many lines
break;
case 'pos_2':
document.write('second ad text');
document.write('second ad more text');
//and so on for many many lines
break;
}
}
Run Code Online (Sandbox Code Playgroud)
然后,我想用document.write广告调用的结果替换范围.
有没有办法让它返回本应写入页面的字符串?
为了每次都展示最佳匹配广告,至少要做以下事情:
但对于非搜索引擎公司而言,上述几乎是不可能的.
那么非谷歌公司采用最佳匹配广告系统的实用方法是什么?
android ×2
javascript ×2
mysql ×2
ads ×1
android-lint ×1
architecture ×1
counter ×1
distributed ×1
grails ×1
jquery ×1
node.js ×1
openx ×1
php ×1
security ×1
web-services ×1