喜悦国际村 
» 游客:  注册 | 登录 | 搜索 | 统计 | 喜悦证交所 | 帮助

RSS 订阅当前论坛  

$5.95 Web Hosting     

上一主题 下一主题
     
标题: [讨论] 问题总结解决方案 支持这样的讨论  
 
wangcnc2005
中级会员
Rank: 3Rank: 3



UID 79276
精华 0
积分 309
帖子 217
金钱 309 喜悦币
威望 0
人脉 0
阅读权限 30
注册 2006-8-30
状态 离线
[广告]: 代充Paypal帐号美元
问题总结解决方案 支持这样的讨论

问题总结解决方案

问题1.  如何解决静态页面生成. 主要是列表生成. 因为最新文章总是在上面,造成每发一篇文章,生成一次列表,太好时间,效率比较低,如何解决?


问题2. 如果信息是动态的,并且信息量比较大,大家是如何解决的? 文件缓存[把整个文件缓存], 数据缓存[把常用的数据写在文件里,访问量比较大,但是不是频繁更新的数据],内存缓存[把数据直接放在内存中进行缓存], 数据库缓存, 数据库直接查询, 及如何解决访问量比较大的问题.


问题3: 搜索技术?  主要做站内搜索.,大家全文搜索是怎么解决的?  用luence? like? 借助别的搜索引擎? 自创?  最好是自创的.

问题4. 视频技术,包括大文件上传,视频截图,在线转化FLV文件. ffmpeg+mencoder?.
windows 和 liunx的解决方案是什么?服务器需要达到什么样的配置和网络带宽才能向土豆等视频网站,播放流畅.

问题5:会员2级域名问题, 比如黄页程序,一个企业有公司简介[company.php] 和 产品管理[product.php]一个用户注册test这个用户名,然后可以你可以在test.xxxx.com/company.php 访问公司简介,test.xxxx.com/product.php 访问产品,而不会和别的用户名混淆,  这个用户注册自动后自动可以实现这个功能是怎么实现的? 是一个用户注册完毕以后新建一个文件夹 test,r然后把company.php 和product.php  拷贝到这个文件夹test下,然后把 test文件夹帮顶域名,test.xxxx.com ,我觉得这个方法太耗空间,一个用户建一个文件夹,并且把文件进行拷贝. 能不能就一个文件company.php 就可以解决,只是不同域名访问的时候内容不同.这个对应关系是如何解决的?



问题6: 地区切换是如何做的了? 比如58同城, 登陆自动进入本地区?比如我是北京的,直接进入北京. 这个是根据超大IP库实现的?   主要是2级域名问题? 比如bj.58.com.cn, 他们是一个地区做一套程序,还是就一套程序,不同域名访问时,仅变内容.
数据表结构   
ID city msg
1    1    '北京信息1'
2    1    '北京信息2'
3    2    '上海信息'

如何作到输入bj.xxxx.com 调用的数据是select * from tablename where city=1
如何作到输入sh.xxxx.com 调用的数据是select * from tablename where city=2

问题7: 58同城的哪个 地图标注, 免费电话和免费短信是如何实现的? 流程是什么? 为什么会免费呢?发短信不要钱吗? 还是58公司把这些费用自己掏腰包了. 这个费用大约是多少? 免费网络电话是什么原理拉?




大家如果你在上述某个问题是比较有经验的,请谈谈你们的你们的解决方法.最好是越详细越好,最好写成一个方案形式?能够让村里的任何一个人根据你的操作步骤解决问题.最好不要用20个字内概括的说.

解决问题编号:1 2......
服务器:window/liunx...
程序HP/ASP/Java....
操作步骤:
包括你的解决方案, 你的观点, 参考来源, 软件来源[及下在地址]



谢谢,
大家一起讨论和发表观点. 力争使程序员技术 上一个档次,挣更多的钱,呵呵. 村民,Come On!!!.

[ 本帖最后由 c1a1o1 于 2007-8-22 12:38 PM 编辑 ]




ASP/PHP/JSP/WAP.
2007-8-21 05:33 PM#1
查看资料  发短消息  顶部
 
只爱一个人 (只爱一个人)
论坛元老
Rank: 8Rank: 8
超级管理员



UID 29639
精华 0
积分 3779
帖子 1617
金钱 3779 喜悦币
威望 0
人脉 0
阅读权限 90
注册 2004-6-26
状态 离线
[广告]: Enom域名自助付费 自助注册 自助PUSH 主流域名COM等一律57.99元年
我发现,你这根本不是讨论,

问题1:这个村子里N年前就有讨论,只是你自己不看
问题2:这根本没有一个完全一至的答案,缓存的情况,只能是视情况而定,但有一点,缓存只是为了减少数据库服务器的压力
问题3:自创,估计村子里目前还没有出现这样的牛人吧?LIKE是最慢,但也是用的最多的,再者从来没有听说,哪里有好的搜索下载,除了一个luence 或是一些开源的程序
问题4:没搞过
问题5:只要你的空间支持2级域名的泛解析,你还有什么不能实现的呢?你无非,只是把以前的user 换成了现在的地址栏的test
问题6:不是你想的那么简单的,你所说的,只是想当于一个中英文的问题,要显示出的内容不一样,很容易搞定.你自己写一个数据库操作的类,根据不同的域名,设定一个SESSION,然后通过数据库类来连接不同的库,不就可以实现.库里的表结构,完全一样,只是connect的时候选择不同的库,不同的库有不同的数据;但对于一个大流量的网站,不光是数据的问题,更重要的是速度,压力的问题
问题7:你这问题,就像是,我办了一张会员卡,一年之内去一个地方不要钱,但你去要钱,你就说,为什么可以不要钱呢.你觉得这世界上有真正不要钱的好事吗?




customavatars/296392.jpg
2007-8-21 06:22 PM#2
查看资料  访问主页  Blog  发短消息  顶部
 
wangcnc2005
中级会员
Rank: 3Rank: 3



UID 79276
精华 0
积分 309
帖子 217
金钱 309 喜悦币
威望 0
人脉 0
阅读权限 30
注册 2006-8-30
状态 离线
[推荐阅读] PHP模块测试的主要方法
这次我主要是想把问题的解决答案总结一下,使每个答案成为很有价值的答案.把好的解决方案结中起来.

大家只要发表你在工作中实际的成功案例,需要注明 服务器+程序语言+不同情况下的详细解决方法+详细范例.

我明天带头先发一个解决方案.希望大家积极起来,不论你的答案是否为最好的答案,只要把你平时用的解决方案发出来就可以.




ASP/PHP/JSP/WAP.
2007-8-21 08:34 PM#3
查看资料  发短消息  顶部
 
wangcnc2005
中级会员
Rank: 3Rank: 3



UID 79276
精华 0
积分 309
帖子 217
金钱 309 喜悦币
威望 0
人脉 0
阅读权限 30
注册 2006-8-30
状态 离线
[推荐阅读] cakephp框架该如何用啊!


<?
//服务器: window/linux  WEB服务器:IIS/Apache
//程序语言:php
//函数:没有封装,只用到手册中的函数


/*数据结构:news
ID  Title  Content
1   测试1   内容1
2   测试2   内容2 */
?>
<?php

//解决方案1: 模板和程序混合
//**********************************************************************************************
$id=$_GET['id'];
$link=mysql_connect("localhost""dbusername""dbuserpassword") or die("Could not connect:".mysql_error());
mysql_select_db("dbname",$link);
//mysql_query("set names GBK"); 用于高版本数据库
$sql="select Tilte,Content from news where ID=$id";
$query=mysql_query($sql,$link);
if(
$row=mysql_fetch_array($query))
{
    
ob_start();//打开输出缓冲区,当缓冲区激活时,所有来自PHP程序的非文件头信息均不会发送,而是保存在内部缓冲区。
    
include('template.php');
    
$content ob_get_contents(); //返回内部缓冲区的内容。
    
ob_end_clean();//删除内部缓冲区的内容,并且关闭内部缓冲区
    
    
    
$filename=$id."html";
    
$fp fopen($filename,'w');
    
fwrite($fp$content);
    
fclose($fp);
}
mysql_close();
//--------------------------------------------------------------------------------------------------------
?>
<!--模板1-->
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title><?=$row['Title']?></title>
</head>
<body>
<table height="4" border="0" align="center" cellpadding="0" cellspacing="0">
  <tr> 
    <td><?=$row['Title']?></td>
  </tr>
  <tr> 
    <td><?=$row['Content']?></td>
  </tr>
</table>
</body>
</html>
<!--结束模板1-->

<?
//**********************************************************************************************
?>



<?php
//解决方案2:模板和程序分离
//*********************************************************************************************
$id=$_GET['id'];
$link=mysql_connect("localhost""dbusername""dbuserpassword") or die("Could not connect:".mysql_error());
mysql_select_db("dbname",$link);
//mysql_query("set names GBK"); 用于高版本数据库
$sql="select Tilte,Content from news where ID=$id";
$query=mysql_query($sql,$link);
if(
$row=mysql_fetch_array($query))
{
    
ob_start();//打开输出缓冲区,当缓冲区激活时,所有来自PHP程序的非文件头信息均不会发送,而是保存在内部缓冲区。
    
include('template.php');
    
$content ob_get_contents(); //返回内部缓冲区的内容。
    
$content=str_replace("{{title}}",$row['title'],$content);    //替换标题标签
    
$content=str_replace("{{content}}",$row['content'],$content);//替换内容标签
    
ob_end_clean();//删除内部缓冲区的内容,并且关闭内部缓冲区
    
    
    
$filename=$id."html";
    
$fp fopen($filename,'w');
    
fwrite($fp$content);
    
fclose($fp);
}
mysql_close();

//--------------------------------------------------------------------------------------------------------
?>
<!--模板2 template.php-->
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>{{title}}</title>
</head>
<body>
<table height="4" border="0" align="center" cellpadding="0" cellspacing="0">
  <tr> 
    <td>{{title}}</td>
  </tr>
  <tr> 
    <td>{{content}}</td>
  </tr>
</table>
</body>
</html>
<!--结束模板2-->

<?
/**********************************************************************************************


总结观点:因为为了提供范例,比较简单。请实际用的时候自己完善。
1.检查ID参数,如果参数异常,比如空,不是数字等
2.文件权限:检查文件是否有写入权限
3.文件写入时,锁定文件


扩展问题:

文章分页: 1;手动分页 2:自动分页
1:手动分页,在内容里插入一个特殊标签.不要和文章内容混淆,如 {{-insertpage-}},这个在文章里出现的概率是非常小的,
在生成静态页面的时候,先把内容读出来
$content=$row['content'];
$contentArray=explode("{{-insertpage-}}",$content)
$page=0;
foreach($contentArray as $value)
{
    
    ob_start();//打开输出缓冲区,当缓冲区激活时,所有来自PHP程序的非文件头信息均不会发送,而是保存在内部缓冲区。
    include('template.php');
    $content = ob_get_contents(); //返回内部缓冲区的内容。
    $content=str_replace("{{title}}",$row['title'],$content);    //替换标题标签
    $content=str_replace("{{content}}",$value,$content);//替换内容标签
    ob_end_clean();//删除内部缓冲区的内容,并且关闭内部缓冲区
    
    $page++;
    $filename=$id."_".$page."html";   //最后文件名是1_1.html,1_2.html....
    $fp = fopen($filename,'w');
    fwrite($fp, $content);
    fclose($fp);
}

2.自动分页,这个好象不是很好处理,除非页面元素比较标准,<p>必须有</p>闭合,请高手继续完善



静态里的动态:比如文章浏览次数
<script language="javascript" src="view.php?id=<?=$row['id']?>" type="text/javascript"></script>
在view.php 输出的时候用document.write('次数')


至于大家还有其他的方法,比如页面404 处理方法,请继续发布和完善
***********************************************************************************************/
?>
后者跟上.




ASP/PHP/JSP/WAP.
2007-8-22 10:36 AM#4
查看资料  发短消息  顶部
 
unspace (未知空间)
版主
Rank: 7Rank: 7Rank: 7
百万富翁


UID 67567
精华 0
积分 48940
帖子 5199
金钱 47841 喜悦币
威望 0
人脉 1099
阅读权限 100
注册 2005-12-28
来自 吉林
状态 离线
[推荐阅读] 求sql语句
还是不错的,水平有限,跟不上了



7月1日起,北京市低保、最低工资标准、失业保险、工伤保险、基本养老金5项社会保障标准均将全部上调。其中,最低工资标准增加70元,提高到800元。
2007-8-22 12:17 PM#5
查看资料  访问主页  Blog  发短消息  顶部
 
细雨清风 (广告位20元/月)
论坛元老
Rank: 8Rank: 8
管理员


UID 71720
精华 0
积分 3001
帖子 361
金钱 7 喜悦币
威望 0
人脉 2994
阅读权限 90
注册 2006-4-15
状态 离线
[推荐阅读] 广州星睿网络招网站程序员(PHP)
上班太累了。



广告位10元/月 本船以为,性感就是让男人有"想看看这件衣服里面有什么"的欲望的样子.
2007-8-22 12:32 PM#6
查看资料  发短消息  顶部
 
c1a1o1
版主
Rank: 7Rank: 7Rank: 7
一品带刀护卫


UID 68669
精华 0
积分 1254
帖子 2220
金钱 1254 喜悦币
威望 0
人脉 0
阅读权限 100
注册 2006-2-17
状态 离线
[推荐阅读] 请问如何配置服务器能使同一局域网内的其他机器可以访问我机器上的php网站
问题2.我感觉 主要还是数据库的设计问题
数据库设计好 那前台的问题就解决了
我们现在的系统用memcache




编程教材专卖
大学生兼职
2007-8-22 12:41 PM#7
查看资料  Blog  发短消息  QQ  顶部
     


  可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题 | 开通个人空间  


 




Powered by Discuz! 6.1.0  © 2001-2010 Comsenz Inc.
Processed in 0.047629 second(s), 6 queries

(冀ICP备05009913号) 管理员:sadly 邮箱/MSN: sadly@phpx.com QQ:824008(长隐) 清除 Cookies - - Archiver - WAP