Fork me on GitHub
《表单篇》DataBase之大数据量经验总结

刚写完本人有史以来的第一份辞呈,准备晚上递交了,心底很是沉重呐。

  想想我这个新手也驻足博客园一年许多月,却从未发表过博客,两个字形容“悲催”!在博客园扮演观众的我最近一直在阅览蒋金楠先生的著作《WCF技术剖析 1》,也难得年初工作不忙,有得空闲充充电。像我这公司几个老鸟,用的东西也都老过时了,所以还是要抽出时间去更新自己的知识库才好。

  工作一年后!我选择了换工作,那辞职的借口谁都会编!但我的理由是我在这里所学到的知识经验和成长的速度不值得我在这里花一年的青春,但这里的环境氛围很好,第一次来面试的感觉是这公司的人很亲和且热情。可悲的是我完全可以胜任我这份工作,所以我选择跳槽。后悔的是跟前面所看到的博客里面所说的一样,因为第一份工作比较急和现在身上的积蓄不够,所以在这里又浪费了许多时光。但也并不是没学到什么好东西!

  这是个人认为最重要的几点

    第一点:让我的方向更明确了,知道如何选择企业如何选择自己喜欢的职业,而且自信心变强了。

    第二点:责任心胜过能力,有责任心和能力的人才能完美胜出。

    第三点:就是我这篇博文的标题,也是我从公司雇佣的”临时工“(一位盛大创新院的领导)那里学习的。这都是围绕一个在线学习平台展开的,因为数据库架构和需求的问题,从而导致出现了冗余数据和功能变更等众多问题。

  这是我个人的总结,目的是希望各位大鸟小鸟说出自己的想法,各位园友互相学习。

  数据库服务器:

    最重要的是数据库架构设计。数据库架构影响着程序功能和性能,间接的就是用户体验和易开发性,说白了到最后都是钱。

    还有一些数据库服务器常规的属性配置,什么查询所占最小内存以及最大工作线程数、优先级等。

    分库分区,分数据存储库文件存储库、随机分库分表等等。尽量减少单库的压力。

    缺少索引(合理利用索引),语句的反复编译,磁盘瓶颈,内存瓶颈等一系列问题也会影响数据库性能。

    当然还有服务器的硬件配置了,响应慢老死机是我们这里的特色。

  数据传输中介:

    网络带宽,这个因素不是程序员人为能控制的。

  应用程序:

    减少与数据库服务器之间的交互!很多人应该都知道,一条语句在数据库走过一趟之后返回的是一个块(大概64K),并非实际的数据量。所以我们应该尽可能的让这个块满载而归(节省点路费也是好的),再在内存中进行操作,因为在内存中操作数据会比在硬盘中快4-20倍不等。

    SQL语句优化,减少不必要的排序或字段和一些函数的使用,这一点要凭借自己对SQL偏好的了解和自己不断的实践调试。反复编译,这个大家都知道的,对于重复的操作尽可能的使用不进行二次编译的存储过程。装载现成数据的DataView的使用。

    数据缓存,这一点也是利用内存操作的优势。

    异步操作配合数据的轻重缓急,这一点主要用于优化用户体验。

  

  个人总结是片面的,难免遗漏些重要的地方。批评欢迎,想说脏话的话也我没辙。

  第一篇博文就此打住了,希望接下来能找个自己如愿的工作,投入几年在工作中去体现自己的价值。

  

  

2012年最有用的50款 jQuery 插件集锦——《表单篇》

 

  这篇文章继续向大家分享一批实用的 jQuery 插件,今天带来的是网站项目中最常用的表单插件。这是一个系列的文章,将向大家分享50款最具创新的,同时也是最有用的 jQuery 插件,这些插件分成以下类别:网页布局插件,导航插件,表格插件,滑块和转盘插件,图表插件,图片特效插件以及视频插件等等,欢迎大家关注。

您可能感兴趣的相关文章

 

jQuery Complexify

jQuery Complexify

网站有责任告诉用户他们设置的密码的质量,这款插件可以显示密码的复杂程度,通过视觉反馈把风险降到最低。

使用非常简单,示例 HTML 代码:

1
2
3
4
5
6
7
8
9
<script src='../assets/s/jquery.complexify.js'></script>
<div id="demo">
    <input type="password" id="password" placeholder="Password">
    <div id="progressbar"><div id="progress"></div></div>
    <div id="status">
        <div id="complexity">0%</div>
        <div id="complexityLabel">Complexity</div>
    </div>
</div>

  示例 CSS 代码:

  示例 JavaScript 代码: 

1
2
3
4
5
6
7
8
9
10
$(function () {
    $("#password").complexify({}, function (valid, complexity) {
        if (!valid) {
            $('#progress').css({'width':complexity + '%'}).removeClass('progressbarValid').addClass('progressbarInvalid');
        } else {
            $('#progress').css({'width':complexity + '%'}).removeClass('progressbarInvalid').addClass('progressbarValid');
        }
        $('#complexity').html(Math.round(complexity) + '%');
    });
});

   插件下载     效果演示

 

jQuery File Upload

jQuery File Upload

jQuery File Upload 是最流行的文件上传插件之一,主要特色:

  • ✓  支持多个文件同时上传
  • ✓  支持拖放上次
  • ✓  显示上次进度
  • ✓  上传可以取消和恢复
  • ✓  可以在客户端缩放图像
  • ✓  支持图像预览
  • ✓  定制和扩展性强
  • ✓  不需要浏览器插件(例如 Flash)
  • ✓  支持跨站点上传
  • ✓  同页面支持多个上传实例

使用方式多种多样,简单示例代码:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
$('#fileupload').fileupload('option', {
            url: '//jquery-file-upload.appspot.com/',
            maxFileSize: 5000000,
            acceptFileTypes: /(\.|\/)(gif|jpe?g|png)$/i,
            process: [
                {
                    action: 'load',
                    fileTypes: /^image\/(gif|jpeg|png)$/,
                    maxFileSize: 20000000 // 20MB
                },
                {
                    action: 'resize',
                    maxWidth: 1440,
                    maxHeight: 900
                },
                {
                    action: 'save'
                }
            ]
        });

   插件下载     效果演示

 

Filtrify

Filtrify

Filtrify 是一款先进的的标签过滤插件,灵感来自 Chosen 的多选功能和欧曼克拉的垂直导航菜单功能。

你可以在标签和由多个不同类别的标签组成的过滤项目中搜索标签,获得包含相关标签项目的数量的实时反馈。

效果演示:

示例代码:

<div id="placeHolder"></div>
<ul id="container">
    <li data-genre="pop, rock, british, classic rock"> The Beatles </li>
    <li data-genre="rock, british, blues, classic rock"> The Rolling Stones </li>
    <li data-genre="alternative, electronic, female vocalists"> Björk </li>
    <li data-genre="rock, alternative, grunge"> Foo Fighters </li>
    <li data-genre="rock, classic rock"> Bruce Springsteen </li>
    ...
</ul>
<script>
    $(function() {
        $.filtrify("container", "placeHolder");
    });
</script>

   插件下载     官方主页

 

mailcheck

mailcheck

Mailcheck 是一款非常棒的 jQuery 插件,当用户拼写错误的电子邮件地址时,会智能提示正确的邮箱域名。

示例 HTML 代码:

1
2
3
<script src="jquery.min.js"></script>
<script src="mailcheck.min.js"></script>
<input id="email" name="email" type="text" />

示例 JavaScript 代码:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
var domains = ['hotmail.com', 'gmail.com', 'aol.com'];
var topLevelDomains = ["com", "net", "org"];
 
var superStringDistance = function(string1, string2) {
  // a string distance algorithm of your choosing
}
 
$('#email').on('blur', function() {
  $(this).mailcheck({
    domains: domains,                       // optional
    topLevelDomains: topLevelDomains,       // optional
    distanceFunction: superStringDistance,  // optional
    suggested: function(element, suggestion) {
      // callback code
    },
    empty: function(element) {
      // callback code
    }
  });
});

   插件下载     官方主页

 

jQuery Credit Card Validator

jQuery Credit Card Validator

jQuery Credit Card Validator 用于检测和校验信用卡号码,它会告诉你检测到的信用卡类型以及号码是否有效。

这款插件适合用于国外项目,不知道大家是否有类似的适合用于国内的插件推荐,欢迎留言:)

   插件下载     效果演示

 

如果您觉得这篇文章对您有用,记得轻轻点击一下右下角的推荐】哦:)

您可能感兴趣的相关文章

   

 
 
 
posted on 2013-03-20 23:05  HackerVirus  阅读(268)  评论(0编辑  收藏  举报