首页 文章 精选 留言 我的

精选列表

搜索[小程序·即时通信 IM],共10028篇文章
优秀的个人博客,低调大师

【分布式计算】DFS && BigTable

1.背景 分布式计算的发迹应该是google在2003年发表的三篇paper,分别是GFS、MapReduce、BigTable。其中MapReduce大家都很熟悉了,不懂的同学也可以看看我之前写的文章 【分布式计算】MapReduce的替代者-Parameter Server 为什么google会搞分布式计算这件事儿呢,因为在那个年代每天会产生几个T的日志,但是当时的磁盘只允许存储几百G的文件,07年之前淘宝的所有数据都是用完就删除的,因为没地方存。后来,人们认识到数据是值钱的,所以需要一种存储策略来存储大数据,于是google就用了分布式存储系统。 这里主要介绍下GFS和BigTable。 2.DFS(对应hadoop的HDFS) DFS是一种分布式文件存储系统。常规的文件系统是树状结构存储的,每个文件有一个指针指到磁盘上的某个区域。 早期

优秀的个人博客,低调大师

Android -- Spinner && AutoCompleteTextView

Spinner 下拉选择框 Android给我们提供了一个Spinner控件,这个控件主要就是一个列表,Spinner位于 android.widget包下,每次只显示用户选中的元素,当用户再次点击时,会弹出选择列表供用户选择,而选择列表中的元素同样来自适配器。Spinner是View类得一个子类。 package com.yydcdut.spinnerstudy; import android.os.Bundle; import android.app.Activity; import android.view.Menu; import android.view.View; import android.widget.AdapterView; import android.widget.AdapterView.OnItemClickListener; import android.widget.AdapterView.OnItemSelectedListener; import android.widget.ArrayAdapter; import android.widget.Spinner; import android.widget.Toast; public class MainActivity extends Activity { private Spinner spinner; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); spinner = (Spinner) findViewById(R.id.spiiner); ArrayAdapter<String> adapter = new ArrayAdapter<String>( getApplicationContext(), android.R.layout.simple_spinner_item); adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); adapter.add("123"); adapter.add("321"); adapter.add("123321"); spinner.setAdapter(adapter); spinner.setOnItemSelectedListener(new OnItemSelectedListener() { @Override public void onItemSelected(AdapterView<?> parent, View view, int position, long id) { Spinner spinner1 = (Spinner) parent; String content = (String) spinner1.getItemAtPosition(position);// 取得与Spinner关联的列表数据的指定位置的数据 Toast.makeText(getApplicationContext(), "position-->" + position + "内容-->" + content, Toast.LENGTH_LONG).show(); } @Override public void onNothingSelected(AdapterView<?> parent) { // TODO 自动生成的方法存根 } }); } } 接下来我们通过更换adapter.setDropDownViewResource(android.R.layout.test_list_item);里面的xml参数来看一看弹出的样式,具体可以参考一下:http://hi.baidu.com/ihsauqaxblbdmwq/item/62fa237f935a6a580d0a0780 AutoCompleteTextView public class MainActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); String[] names = { "z11", "z22", "z33", "a44", "a55" }; AutoCompleteTextView auto = (AutoCompleteTextView) findViewById(R.id.auto); ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, android.R.layout.simple_dropdown_item_1line, names); auto.setAdapter(adapter); } } AutoCompleteTextView是实现动态匹配输入的内容。如google搜索引擎当输入文本时可以根据内容显示匹配的热门信息。 虽然AutoCompleteTextView不是Android的常用控件,但是它的实用性还是很强的,具体的使用可以参考ApiDemos,对于基本的用法,它有很详细的说明。但是这些例子远远无法满足我们的需求,下面讲一下几个例子中没有涉及到的属性。 completionThreshold:它的值决定了你在AutoCompleteTextView至少输入几个字符,它才会具有自动提示的功能。另,默认最多提示20条。 dropDownAnchor:它的值是一个View的ID,指定后,AutoCompleteTextView会在这个View下弹出自动提示。 dropDownSelector:应该是设置自动提示的背景色之类的,没有尝试过,有待进一步考证。 dropDownWidth:设置自动提示列表的宽度。 我是天王盖地虎的分割线 源代码:http://pan.baidu.com/s/1dD1Qx01 spinner学习.zip autocompletetextview学习.zip 本文转自我爱物联网博客园博客,原文链接:http://www.cnblogs.com/yydcdut/p/3829539.html,如需转载请自行联系原作者

优秀的个人博客,低调大师

Android -- Drawable &amp;&amp; Bitmap

Bitmap转Drawable Bitmap bm=xxx; BitmapDrawable bd=new BitmapDrawable(bm); 因为BtimapDrawable是Drawable的子类,最终直接使用bd对象即可。 Drawable转Bitmap Drawable d=xxx; BitmapDrawable bd = (BitmapDrawable) d; Bitmap bm = bd.getBitmap(); 最终bm就是我们需要的Bitmap对象了。 从资源中获取Bitmap public static Bitmap getBitmapFromResources(Activity act, int resId) { Resources res = act.getResources(); return BitmapFactory.decodeResource(res, resId); } byte[] → Bitmap public static Bitmap convertBytes2Bimap(byte[] b) { if (b.length == 0) { return null; } return BitmapFactory.decodeByteArray(b, 0, b.length); } Bitmap → byte[] public static byte[] convertBitmap2Bytes(Bitmap bm) { ByteArrayOutputStream baos = new ByteArrayOutputStream(); bm.compress(Bitmap.CompressFormat.PNG, 100, baos); return baos.toByteArray(); } Drawable → Bitmap public static Bitmap convertDrawable2BitmapByCanvas(Drawable drawable) { Bitmap bitmap = Bitmap.createBitmap(drawable.getIntrinsicWidth(),drawable.getIntrinsicHeight(),drawable.getOpacity() != PixelFormat.OPAQUE ? Bitmap.Config.ARGB_8888: Bitmap.Config.RGB_565); Canvas canvas = new Canvas(bitmap); // canvas.setBitmap(bitmap); drawable.setBounds(0, 0, drawable.getIntrinsicWidth(), drawable.getIntrinsicHeight()); drawable.draw(canvas); return bitmap; } 我是天王盖地虎的分割线 本文转自我爱物联网博客园博客,原文链接:http://www.cnblogs.com/yydcdut/p/4080147.html,如需转载请自行联系原作者

优秀的个人博客,低调大师

TextView&amp;amp;EditText

super.onCreate(savedInstanceState);将布局xml文件引入到activity当中setContentView(R.layout.main_activity); 将布局文件与当前文件关联 wrap_content:包裹实际文本内容 match_parent:当前控件铺满父类容器:2.3api之后添加的一个属性值 fill_parent:当前控件铺满父类容器:在2.3api之前的一个属性 附代码: <TextView android:id="@+id/textView1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="姓名:" android:textSize="28sp" //文本大小经常用SP设置 android:textColor="#000000"/> <EditText android:hint="请输入你的姓名" android:id="@+id/editText1" android:layout_width="match_parent" android:layout_height="wrap_content" > 1. 使用findViewById方法获取一个View对象,参数为控件的id,同时还需要把findViewById返回的View对象强制转换成相应的类型。(TextView)this.findViewById(R.id.bookName)2. 一般情况下,布局属性与对象的setXXX方法一一对应,比如设置字体颜色,在xml中属性是android:textColor,而在Activity中则是setTextColor方法,(tv是TextView对象)tv.setTextColor(Color.RED)3. 设置EditText的android:inputType属性可以限制文本输入类型比如android:inputType="textPassword"为设置输入格式为密码格, android:inputType="phone"为设置输入格式为拨号键盘 <requestFocus /> </EditText>

优秀的个人博客,低调大师

Squid普通代理&amp;&amp;透明代理&amp;&amp;反向代理学习

普通代理 背景 192.168.10.2 Windows Squid CentOS 202.168.10.2 CentOS 配置 Windows VM1网卡配置 Squid服务器 VM1网卡配置 Squid服务器 VM2网卡配置 Server VM2网卡配置 Squid安装 将原先的2000+行的配置文件squid.conf删除,自行建立一个squid.conf文件 自动建立缓存目录,在/var/spool/squid/,查看 Server设置 <html><body><h1>web-200.168.10.2</h1></body></html> 测试 Windows IE浏览器配置代理 查看日志 透明代理 背景 与普通代理相同,割了。 配置 Windows VM1网卡配置 其他不变。 Squid配置 添加iptables规则,把内部的http请求重定向到3128端口 测试 反向代理 背景 配置 Windows VM1网卡配置 Squid 服务器IP配置 WEB Server IP配置 squid.conf配置文件 测试 最后测试速度第一次打开网页火狐Firebug。 第一次之后 总结 普通代理只是个很简单的代理,如果是IT人员的话,知道怎么弄,但是对于非IT人员的话,很麻烦,可能要跟着教程走。所以这个不是很方便。所以就有了透明代理,这样无需在IE上设置便可以直接通过代理上网。至于反向代理,主要是为了提高速度而设置的。就像一个公司里面的员工,都通过这个代理访问出去的,第一个员工访问了腾讯的主页,因为他是全公司的第一个去访问的腾讯,那么网页返回的时间就比较长,同时反向代理把腾讯网页上的一些静态信息保存在自己主机上,那么第二次访问,那些静态的东西,比如图片、FLASH等就直接从反向代理服务器中取就OK了,速度就快了许多,上面的图也可以看出来。 本文转自我爱物联网博客园博客,原文链接:http://www.cnblogs.com/yydcdut/p/3532313.html,如需转载请自行联系原作者

资源下载

更多资源
Mario

Mario

马里奥是站在游戏界顶峰的超人气多面角色。马里奥靠吃蘑菇成长,特征是大鼻子、头戴帽子、身穿背带裤,还留着胡子。与他的双胞胎兄弟路易基一起,长年担任任天堂的招牌角色。

腾讯云软件源

腾讯云软件源

为解决软件依赖安装时官方源访问速度慢的问题,腾讯云为一些软件搭建了缓存服务。您可以通过使用腾讯云软件源站来提升依赖包的安装速度。为了方便用户自由搭建服务架构,目前腾讯云软件源站支持公网访问和内网访问。

Nacos

Nacos

Nacos /nɑ:kəʊs/ 是 Dynamic Naming and Configuration Service 的首字母简称,一个易于构建 AI Agent 应用的动态服务发现、配置管理和AI智能体管理平台。Nacos 致力于帮助您发现、配置和管理微服务及AI智能体应用。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据、流量管理。Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。

Rocky Linux

Rocky Linux

Rocky Linux(中文名:洛基)是由Gregory Kurtzer于2020年12月发起的企业级Linux发行版,作为CentOS稳定版停止维护后与RHEL(Red Hat Enterprise Linux)完全兼容的开源替代方案,由社区拥有并管理,支持x86_64、aarch64等架构。其通过重新编译RHEL源代码提供长期稳定性,采用模块化包装和SELinux安全架构,默认包含GNOME桌面环境及XFS文件系统,支持十年生命周期更新。

用户登录
用户注册