- 3.《kafka》SpringCloud学习之SpringCloudStream&集成kafka
wingsoldold
一、关于Spring-Cloud-StreamSpringCloudStream本质上就是整合了SpringBoot和SpringIntegration,实现了一套轻量级的消息驱动的微服务框架。通过使用SpringCloudStream,可以有效地简化开发人员对消息中间件的使用复杂度,让系统开发人员可以有更多的精力关注于核心业务逻辑的处理。在这里我先放一张官网的图:SCSt与粘合剂应用程序通过Sp
- STM32 寄存器方式 启动TIM3
kimiyang123
嵌入式系统开发
为了方便理解TIM基本定时器的寄存器功能,这里使用纯寄存器方式控制TIM3定时中断,中断周期为1000mS。/**@Description:寄存器方式启动STM32F103的TIM3*@version:*@Company:scst.edu*@Author:Kimiyang*@Date:2020-05-3122:31:30*@LastEditors:Kimiyang*@LastEditTime:20
- SCST 共享磁盘动态扩容
xingyys
iscsilinux
SCST共享的磁盘支持在线扩容。操作如下:scst服务端首先有一块zfs存储卷,现在将其容量从15G扩展到20G。zfssetvolsize=20Gtank/vol修改scst中device的size属性scstadmin-set_dev_attrdevice1-attributessize=21474836480-nopromptiscsi客户端重新扫描targetiscsiadm-mnode-
- open-iscsi/scst 追踪二 (open-iscsi 用户态管理系统技术架构分析)
孙昊
存储系统/架构
1.整体架构1.1.命名UNIX域套接字UNIX域套接字用于同一台机器上的运行的进程之间的通信,它是双向的、一种高效的IPC。UNIX域套接字可以使用标准的套接字接接口创建。1.2.netlinknetlink套接字是用以实现用户进程与内核进程通信的一种特殊的进程间通信(IPC),也是网络应用程序与内核通信的最常用的接口。Netlink套接字可以使用标准的套接字接口来创建。socket(),bin
- open-iscsi/scst 追踪四(网络字节序)(转载有修改)
孙昊
存储系统/架构
字节序问题---Endianness1.1.Processers所有的字节序问题都要追踪到CPU上,不管是GeneralCPU还是SpecialCPU,CPU决定了存储的字节排列顺序问题,即字节序(Endianness)。通用CPU领域以intel代表的x86家族历来以little-endian为主,而POWER-PC则主推big-endian设计的CPU;对于SpecialCPU,特别是在嵌入式
- open-iscsi/scst 追踪三(scsi总线扫描)
孙昊
存储系统/架构
open-iscsi注册为一个scsihostdriver,我们需要了解scsi这部分设备扫描的原理,剖析了一下。1、写在前面Scsi总线在扫描磁盘设备后生成的盘符与设备通道之间的关系是不固定的,其最主要的原因是设计者考虑到scsi总线在系统中不会静态、唯一存在,会动态生成,而盘符空间在全局只有一个,因此,盘符与设备通道之间很难实现绑定,至少这种绑定关系会随着系统中scsi总线的增加而遭到破坏。所
- open-iscsi/scst 追踪一 (scst 架构)
孙昊
存储系统/架构
scst是一款开源的企业级iscsitarget系统,scst经常被用在网络存储架构中,之前在相关项目中频繁用到,并对其做过功能扩展,借此把其源码分析写一下,总结一下,通过源码分析,我们可以较为清晰的看到iscsi协议在target端的处理全过程。(scst官方主页在http://git.etherboot.org/scm/mirror/scst/www/index.html)本篇先总体介绍技术架
- Linux中三种SCSI target的介绍之SCST
瞧见风
Storage
1.简介Linux通用的SCSI目标子系统(SCST)是一个为LinuxSCSI目标子系统的另一种实现。它是由英国著名存储开发团队ID7研发,目前由SanDisk管理(收购了FusionIO)。它的出现要早于LIO,功能也比LIO完善,目前的用户是许多提供存储解决方案的大公司如EMC,IBM,HP采用。它提供Linux内核之间和处理和SCSI目标驱动程序的统一的,一致的接口,同时提供Linux内核
- 关于scst的使用
opendba
60.硬件
各位大虾:希望构建一个网络存储环境,主机A和主机B都插有Qlogic的HBA卡,然后通过光纤直连,主机A作server,主机B作存储设备。现在我已经给两台主机上装了HBA卡的驱动,主机B上通过scli已经能够看到port,wwpn等信息,也利用mdadm将几个分区作成了一个md,那么下一步应该怎么做?具体的问题是:1)A和B都还需什么设置2)如何看直连的AB已经通了3)A如何看到B的磁盘4)A如何
- iSCSI-SCST的应用
heshangkung
数据保护
问题描述Linux服务器上,有很多SCSI设备(例如虚拟磁盘),通过iSCSI协议,走以太网,怎样让其他的服务器使用到这些设备?解决方案是通过GenericSCSITargetSubsystemforLinux,常用的软件工具有tgt,scst等。这里介绍SCST3.0.1版本的安装,配置,以及使用。安装SCST安装介质:scst-3.0.1.tar.bz2#tarxvfjscst-3.0.1.t
- centos7 scst安装
潇洒的白杨树
scst
查看kernel版本ip:172.24.8.29uname-a我的系统信息:Linuxlocalhost.localdomain3.10.0-123.el7.x86_64#1SMPMonJun3012:09:22UTC2014x86_64x86_64x86_64GNU/Linux环境准备mkdir/root/scstyuminstall-ybzip2gccperl-ExtUtils-CBuilde
- Centos 6下配置SCST
bobpen
iscsi
1.安装环境Centos6.4VmwareEsxi5.1scst-2.1.0scstadm-2.1.0iscsi-scst-2.1.02.安装步骤2.1更新epel-release#rpm-ivhhttp://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm2.2安装依赖包#yum-yinstallredhat-l
- linux中创建scst iscsi-scst
dymom
RAID
从官方http://scst.sourceforge.net/downloads.html下载scstiscsiscst注意要版本一致,我下载的都是2.2.0版本(1)解压下载的两个包,我是解压到用户目录下的my文件夹。如下,对isci-scst也同样操作。建议这一步在普通用户下操作,这样方便可以在图形界面中直接进去目录查看。建议解压后先看一下readme及iscsi-scst中的howto的内容
- linux如何挂载FC-SAN
wanminxg
storage
~在挂载FC-SAN中出现一些问题,写了个文档分享下过程,有同样问题的大家一起讨论下:存储端:1.激活HBA接口2.绑定wwn编号3.划分lun#fdisk-l4.创建group#lvdisplay5.绑定lun进group6.scst服务检查#scstadmin-list_session#检查存储端挂载7.reboot---------------------------------------
- 通过iscsi协议使用ceph rbd
进击的程序员
ceph
通过iscsi协议使用cephrbdCephiscsigatway基本框架图:1.常见的几种iscsitargetGNU/Linux系统中流行的SCSItarget框架或iSCSItarget实现有如下几种:tgt、SCST、Linux-IO。1.1tgttgt是一个用户态的SCSItarget框架,在GNU/Linux内核直接集成SCSItarget框架之前,这是一个绝对主流的框架。它的优点是:
- 在Cent OS 6系统下部署SCST服务
东岸西界
一、SCST简介SCST是GenericSCSTTargetSubsystemforLinux(Linux通用SCSI目标子系统)的简称,它是LinuxSCSI目标子系统的一种实现,为Linux内核和SCSTTargetDriver之间提供了一个统一的接口,同时提供了Linux内核与存储后端的句柄连接,用来连接真实或模拟的存储后端与目标驱动程序。SCST服务由SCST、iSCSI-SCST和scs
- Self-critical Sequence Training for Image Captioning
luputo
论文笔记
Self-criticalSequenceTrainingforImageCaptioning原文地址时间:2017Intro近年来策略梯度(policy-gradient)在训练深度端到端系统上展现了它的能力,它可以以不可导的度量作为目标函数,本文考虑的问题就是使用强化学习来训练imagecaptioning模型,称为self-criticalsequencetraining(SCST),它是一
- centos7安装scst出现的问题以及解决
潇洒的白杨树
scst
tar-jxvf*.tar.gz2可能出现如下错误:[root@localhost~]#tar-jxvfscst-3.1.0.tar.bz2tar(child):bzip2:Cannotexec:Nosuchfileordirectorytar(child):Errorisnotrecoverable:exitingnowtar:Childreturnedstatus2tar:Errorisnot
- SCST
Wang_Xuemin
scst
在SCSITarget上删除lun后,需要在Initiator上rescan后,就得lun才会消失。windows上直接rescandisk即可。Linux上,对host和fc_host重新扫描,是不行的。是要触发删除lun的操作。使用sg3_utils里的脚本/usr/bin/rescan-scsi-bus.sh--remove
- Debian上SCST的设置
dxm2025
一)创建SCST,无infiniband支持1:载入最小化支持#aptitudeinstallbuild-essentialslinux-headerscheckinstall#wgethttp://downloads.sourceforge.net/project/scst/scst/2.0.0.1/scst-2.0.0.1.tar.gz#tar-xzfscstadmin-2.0.0.tar.g
- 纯命令行配置scst向windows提供iSCSI存储资源
昌山小屋
存储技术原理系统运维
这篇文章主要介绍如何搭建SCST环境,并通过命令行和修改配置文件的方式将Linux下的存储挂载到Windows主机端,对涉及到的主要知识点进行了拓展讲解。一、SCST安装1.1简介SCST是GenericSCSTTargetSubsystemforLinux的简称,意为Linux通用SCSI目标子系统,是LinuxSCSI目标子系统的一种实现。它为SCSTTargetDriver和Linux内核之
- LIO -SCSI target
cybertan
2010年底,LIO项目获选成为新的内核态的SCSItarget,取代原有的用户态的STGT项目。当时有两个主要的竞争项目(LIO和SCST),都在努力将代码并入主线内核。本文将比较着两个项目,并尽力描述他们都提供了什么东西。什么是SCSITarget?SCSI子系统使用了一种客户机-服务器(C/S)模型。通常,一台计算机是这个模型中的客户机,称为initiator(发起者),想target(目标
- linux服务器挂载FC-SAN(大于8TB)
242400
linux
~在挂载FC-SAN中出现一些问题,写了个文档分享下过程,有同样问题的大家一起讨论下:存储端:1.激活HBA接口2.绑定wwn编号3.划分lun #fdisk-l4.创建group #lvdisplay5.绑定lun进group6.scst服务检查 #scstadmin-list_session #检查存储端挂载7.reboot----------------------------
- scst target 的iscsi参数设置(配图)
242400
配置文件targetiscsi参数设置
scsttarget的iscsi参数设置/etc/iscsi-scstd文件是配置iscsi的配置文件,其中每行#号都是注释,可以去掉#号,并且修改参数来对iscsitarget的属性进行修改。(1)账号接口去掉IncomingUser的注释符号,可增加此行的用户。(支持多账号)下图为frank和joe两个账号比较重要的配置如下 把这个账号密码设置以后,在windows的Microsoft iS
- SCST接口配置(配图)
242400
SCST接口接口配置
SCST接口 在命令行输入scstadmin就可以查看scstadmin的命令行参数,可以直观的看到scstadmin所有的参数和解释,还有事例。 一、 基本操作: (1)–config 用指定的配置文件配置scst。为配置文件路径 比如:输入 scstadmin –config /etc/scst.conf 读取/etc/scst.conf系统启动时会自动读取/etc/sc
- 搭建 FC SAN
xxqcpj
职场SANFC休闲diyNBU
起因:测试NBUforSQL模拟FC的带库 FCSAN:X86主机+target模式的HBA卡+SCSItarget软件(SCST,,nexentastor.open-e)+VTL软件(mhVTL)软件将X86主机模拟成FCSAN,直接接入FCswitch,还可以测试下NBUSANCLIENT+FTMediaserver
- gbic sfp sff 模块说明
angel13
模块休闲GBICSFPSFF
1X9GBICSFPSFF光模块知识光收发一体模块,英文名称opticaltransceiver,简称光模块,是光纤通信系统中重要的器件,包括以下种类:1.10Gbs光模块(XFP,SFP+,300pin)――应用于连续光通信(城域网、以太网、光纤通路)的紧密10Gb/s光收发模组。2.1x9双工,2x5,2x10等SCST连接器光模块3.RJ45电口小型可插拔模块4.BiDi系列单纤双向光模块(
- 部署JBPM 流程
j2ee_zhongqi
workflowjbpm
JBPM流程开发完成之后,首先需要部署流程,才可以运行。
/*
package com.ibm.cdl.scst.service;
import org.apache.log4j.Logger;
import org.jbpm.JbpmContext;
import org.jbpm.JbpmException;
import org.jbpm.graph.def.Proce
- Start the FCoE Target
xitong
target
Environment : CentOS-5.5 (Linux-2.6.34.7)
Scst FCoE Target
Target : Start the FCoE Target
Operating :
1.install FCoEtargetreference to<scst-src-dir>/trunk/fcst/README
2.When everythin
- CentOS 5.5 安装SCST-FCST中的内核编译错误
xitong
centos
环 境: CentOS 5.4 x86_64 linux-2.6.32.29
安 装: intel pro 1000 系列15.4的驱动,编译安装 e1000-8.0.18
问 题:
内核打完补丁后make,
显示:
drivers/scsi/libfc/fc_lport.c: In function ?.c_lport_recv_req?. drivers/scsi/libfc
- TOMCAT在POST方法提交参数丢失问题
357029540
javatomcatjsp
摘自http://my.oschina.net/luckyi/blog/213209
昨天在解决一个BUG时发现一个奇怪的问题,一个AJAX提交数据在之前都是木有问题的,突然提交出错影响其他处理流程。
检查时发现页面处理数据较多,起初以为是提交顺序不正确修改后发现不是由此问题引起。于是删除掉一部分数据进行提交,较少数据能够提交成功。
恢复较多数据后跟踪提交FORM DATA ,发现数
- 在MyEclipse中增加JSP模板 删除-2008-08-18
ljy325
jspxmlMyEclipse
在D:\Program Files\MyEclipse 6.0\myeclipse\eclipse\plugins\com.genuitec.eclipse.wizards_6.0.1.zmyeclipse601200710\templates\jsp 目录下找到Jsp.vtl,复制一份,重命名为jsp2.vtl,然后把里面的内容修改为自己想要的格式,保存。
然后在 D:\Progr
- JavaScript常用验证脚本总结
eksliang
JavaScriptjavaScript表单验证
转载请出自出处:http://eksliang.iteye.com/blog/2098985
下面这些验证脚本,是我在这几年开发中的总结,今天把他放出来,也算是一种分享吧,现在在我的项目中也在用!包括日期验证、比较,非空验证、身份证验证、数值验证、Email验证、电话验证等等...!
&nb
- 微软BI(4)
18289753290
微软BI SSIS
1)
Q:查看ssis里面某个控件输出的结果:
A MessageBox.Show(Dts.Variables["v_lastTimestamp"].Value.ToString());
这是我们在包里面定义的变量
2):在关联目的端表的时候如果是一对多的关系,一定要选择唯一的那个键作为关联字段。
3)
Q:ssis里面如果将多个数据源的数据插入目的端一
- 定时对大数据量的表进行分表对数据备份
酷的飞上天空
大数据量
工作中遇到数据库中一个表的数据量比较大,属于日志表。正常情况下是不会有查询操作的,但如果不进行分表数据太多,执行一条简单sql语句要等好几分钟。。
分表工具:linux的shell + mysql自身提供的管理命令
原理:使用一个和原表数据结构一样的表,替换原表。
linux shell内容如下:
=======================开始 
- 本质的描述与因材施教
永夜-极光
感想随笔
不管碰到什么事,我都下意识的想去探索本质,找寻一个最形象的描述方式。
我坚信,世界上对一件事物的描述和解释,肯定有一种最形象,最贴近本质,最容易让人理解
&
- 很迷茫。。。
随便小屋
随笔
小弟我今年研一,也是从事的咱们现在最流行的专业(计算机)。本科三流学校,为了能有个更好的跳板,进入了考研大军,非常有幸能进入研究生的行业(具体学校就不说了,怕把学校的名誉给损了)。
先说一下自身的条件,本科专业软件工程。主要学习就是软件开发,几乎和计算机没有什么区别。因为学校本身三流,也就是让老师带着学生学点东西,然后让学生毕业就行了。对专业性的东西了解的非常浅。就那学的语言来说
- 23种设计模式的意图和适用范围
aijuans
设计模式
Factory Method 意图 定义一个用于创建对象的接口,让子类决定实例化哪一个类。Factory Method 使一个类的实例化延迟到其子类。 适用性 当一个类不知道它所必须创建的对象的类的时候。 当一个类希望由它的子类来指定它所创建的对象的时候。 当类将创建对象的职责委托给多个帮助子类中的某一个,并且你希望将哪一个帮助子类是代理者这一信息局部化的时候。
Abstr
- Java中的synchronized和volatile
aoyouzi
javavolatilesynchronized
说到Java的线程同步问题肯定要说到两个关键字synchronized和volatile。说到这两个关键字,又要说道JVM的内存模型。JVM里内存分为main memory和working memory。 Main memory是所有线程共享的,working memory则是线程的工作内存,它保存有部分main memory变量的拷贝,对这些变量的更新直接发生在working memo
- js数组的操作和this关键字
百合不是茶
js数组操作this关键字
js数组的操作;
一:数组的创建:
1、数组的创建
var array = new Array(); //创建一个数组
var array = new Array([size]); //创建一个数组并指定长度,注意不是上限,是长度
var arrayObj = new Array([element0[, element1[, ...[, elementN]]]
- 别人的阿里面试感悟
bijian1013
面试分享工作感悟阿里面试
原文如下:http://greemranqq.iteye.com/blog/2007170
一直做企业系统,虽然也自己一直学习技术,但是感觉还是有所欠缺,准备花几个月的时间,把互联网的东西,以及一些基础更加的深入透析,结果这次比较意外,有点突然,下面分享一下感受吧!
&nb
- 淘宝的测试框架Itest
Bill_chen
springmaven框架单元测试JUnit
Itest测试框架是TaoBao测试部门开发的一套单元测试框架,以Junit4为核心,
集合DbUnit、Unitils等主流测试框架,应该算是比较好用的了。
近期项目中用了下,有关itest的具体使用如下:
1.在Maven中引入itest框架:
<dependency>
<groupId>com.taobao.test</groupId&g
- 【Java多线程二】多路条件解决生产者消费者问题
bit1129
java多线程
package com.tom;
import java.util.LinkedList;
import java.util.Queue;
import java.util.concurrent.ThreadLocalRandom;
import java.util.concurrent.locks.Condition;
import java.util.concurrent.loc
- 汉字转拼音pinyin4j
白糖_
pinyin4j
以前在项目中遇到汉字转拼音的情况,于是在网上找到了pinyin4j这个工具包,非常有用,别的不说了,直接下代码:
import java.util.HashSet;
import java.util.Set;
import net.sourceforge.pinyin4j.PinyinHelper;
import net.sourceforge.pinyin
- org.hibernate.TransactionException: JDBC begin failed解决方案
bozch
ssh数据库异常DBCP
org.hibernate.TransactionException: JDBC begin failed: at org.hibernate.transaction.JDBCTransaction.begin(JDBCTransaction.java:68) at org.hibernate.impl.SessionImp
- java-并查集(Disjoint-set)-将多个集合合并成没有交集的集合
bylijinnan
java
import java.util.ArrayList;
import java.util.Arrays;
import java.util.HashMap;
import java.util.HashSet;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import java.ut
- Java PrintWriter打印乱码
chenbowen00
java
一个小程序读写文件,发现PrintWriter输出后文件存在乱码,解决办法主要统一输入输出流编码格式。
读文件:
BufferedReader
从字符输入流中读取文本,缓冲各个字符,从而提供字符、数组和行的高效读取。
可以指定缓冲区的大小,或者可使用默认的大小。大多数情况下,默认值就足够大了。
通常,Reader 所作的每个读取请求都会导致对基础字符或字节流进行相应的读取请求。因
- [天气与气候]极端气候环境
comsci
环境
如果空间环境出现异变...外星文明并未出现,而只是用某种气象武器对地球的气候系统进行攻击,并挑唆地球国家间的战争,经过一段时间的准备...最大限度的削弱地球文明的整体力量,然后再进行入侵......
那么地球上的国家应该做什么样的防备工作呢?
&n
- oracle order by与union一起使用的用法
daizj
UNIONoracleorder by
当使用union操作时,排序语句必须放在最后面才正确,如下:
只能在union的最后一个子查询中使用order by,而这个order by是针对整个unioning后的结果集的。So:
如果unoin的几个子查询列名不同,如
Sql代码
select supplier_id, supplier_name
from suppliers
UNI
- zeus持久层读写分离单元测试
deng520159
单元测试
本文是zeus读写分离单元测试,距离分库分表,只有一步了.上代码:
1.ZeusMasterSlaveTest.java
package com.dengliang.zeus.webdemo.test;
import java.util.ArrayList;
import java.util.List;
import org.junit.Assert;
import org.j
- Yii 截取字符串(UTF-8) 使用组件
dcj3sjt126com
yii
1.将Helper.php放进protected\components文件夹下。
2.调用方法:
Helper::truncate_utf8_string($content,20,false); //不显示省略号 Helper::truncate_utf8_string($content,20); //显示省略号
&n
- 安装memcache及php扩展
dcj3sjt126com
PHP
安装memcache tar zxvf memcache-2.2.5.tgz cd memcache-2.2.5/ /usr/local/php/bin/phpize (?) ./configure --with-php-confi
- JsonObject 处理日期
feifeilinlin521
javajsonJsonOjbectJsonArrayJSONException
写这边文章的初衷就是遇到了json在转换日期格式出现了异常 net.sf.json.JSONException: java.lang.reflect.InvocationTargetException 原因是当你用Map接收数据库返回了java.sql.Date 日期的数据进行json转换出的问题话不多说 直接上代码
&n
- Ehcache(06)——监听器
234390216
监听器listenerehcache
监听器
Ehcache中监听器有两种,监听CacheManager的CacheManagerEventListener和监听Cache的CacheEventListener。在Ehcache中,Listener是通过对应的监听器工厂来生产和发生作用的。下面我们将来介绍一下这两种类型的监听器。
- activiti 自带设计器中chrome 34版本不能打开bug的解决
jackyrong
Activiti
在acitivti modeler中,如果是chrome 34,则不能打开该设计器,其他浏览器可以,
经证实为bug,参考
http://forums.activiti.org/content/activiti-modeler-doesnt-work-chrome-v34
修改为,找到
oryx.debug.js
在最头部增加
if (!Document.
- 微信收货地址共享接口-终极解决
laotu5i0
微信开发
最近要接入微信的收货地址共享接口,总是不成功,折腾了好几天,实在没办法网上搜到的帖子也是骂声一片。我把我碰到并解决问题的过程分享出来,希望能给微信的接口文档起到一个辅助作用,让后面进来的开发者能快速的接入,而不需要像我们一样苦逼的浪费好几天,甚至一周的青春。各种羞辱、谩骂的话就不说了,本人还算文明。
如果你能搜到本贴,说明你已经碰到了各种 ed
- 关于人才
netkiller.github.com
工作面试招聘netkiller人才
关于人才
每个月我都会接到许多猎头的电话,有些猎头比较专业,但绝大多数在我看来与猎头二字还是有很大差距的。 与猎头接触多了,自然也了解了他们的工作,包括操作手法,总体上国内的猎头行业还处在初级阶段。
总结就是“盲目推荐,以量取胜”。
目前现状
许多从事人力资源工作的人,根本不懂得怎么找人才。处在人才找不到企业,企业找不到人才的尴尬处境。
企业招聘,通常是需要用人的部门提出招聘条件,由人
- 搭建 CentOS 6 服务器 - 目录
rensanning
centos
(1) 安装CentOS
ISO(desktop/minimal)、Cloud(AWS/阿里云)、Virtualization(VMWare、VirtualBox)
详细内容
(2) Linux常用命令
cd、ls、rm、chmod......
详细内容
(3) 初始环境设置
用户管理、网络设置、安全设置......
详细内容
(4) 常驻服务Daemon
- 【求助】mongoDB无法更新主键
toknowme
mongodb
Query query = new Query(); query.addCriteria(new Criteria("_id").is(o.getId())); &n
- jquery 页面滚动到底部自动加载插件集合
xp9802
jquery
很多社交网站都使用无限滚动的翻页技术来提高用户体验,当你页面滑到列表底部时候无需点击就自动加载更多的内容。下面为你推荐 10 个 jQuery 的无限滚动的插件:
1. jQuery ScrollPagination
jQuery ScrollPagination plugin 是一个 jQuery 实现的支持无限滚动加载数据的插件。
2. jQuery Screw
S