两角和差的三角函数公式的证明

  categories:资料  author:

前阵子出过一道 ( ),有一些网友踊跃提供了自己的思路。在公布我的做法之前,我想先讲讲其中需要利用到的一个有关三角函数的公式以及其证明,大家可以先了解一下三角函数的定义:

先来看看两角和差的三角函数公式的内容吧,真是又对称又神奇吧:

证明方法并不唯一,在这里提供一种我认为比较容易理解的方法。如下图所示,从 A 出发作 ∠α 和 ∠β,在 ∠β 的一条射线上取一点 D ,过 D 作 ∠β 的另一条射线的垂线,设垂足为 E。然后过 E 作∠α 的另一条射线的垂线,设垂足为 B。再延长 EB,作 CD ⊥ CE。

如果假设 AD = 1,那么在 △AED 中,AE = cosβ,DE = sinβ。先来证明第 1 个公式:在 △CDE

阅读全文

赢在起跑之前

  categories:资料  author:

儿童计算机培训的一个策略

大家可能经常听说, 别输在起跑线上, 而我这里提出“赢在起跑之前”,其实, 您在起跑线上无论您多么努力,您也是同大家处于基本相同位置, 最多也就赢了几秒钟而已, 如下图, 您还能多获得多少时间?

我说赢在起跑之前,是指若是我们能在起跑之前已经合理合法的取得了足够的优势, 那么我将更有优势, 如下图

我们若是能像上图,在起跑之前已经取得了合理的领先优势, 那么我们应该比赢在起跑线上更有优势感了。我想当我们有了足够超前的优势后, 您就真的不用担心自己有事情打扰, 有跑的慢的可能等。。。  一切当然都不是问题了。

本文探讨一种儿童计算机培训的策略问题, 希望对您有一定的帮助。

一。 我们的终点在哪里?

有了起跑线, 自然就要有终点, 那么什么是我们的终点, 也就是:什么是我们的目标?

我们的目标就是孩子将来大学毕业后,能在工作中更轻松, 更有竞争力, 用更少的时间获得更多成功, 更快的提升。 我们孩子现在可能不了解将来社会的压力和竞争, 但是我们的家长可能会略知道些社会的竞争。 我们总会自觉不自觉的,主动或者被动的就被参与到社会竞争中。这里是我以前总结的关于人的竞争的资料供您参考

二。 我们如何能获取必要的合理的优势?

正如文章的前面所讲, 我们必须提前在起跑线上出发, 处于一个非常超前的位置, 然后我们在正式起跑的时候我们就有了足够的优势了。

每个行业等都有自己的优势,都有自己的办法和窍门, … 阅读全文

Kubernetes 在知乎上的应用

  categories:资料  author:

知乎在 2014 年开始使用容器技术,至今为止几乎所有的业务都运行在容器平台上。知乎最初使用 Mesos 来管理容器集群,现在正处于向 Kubernetes 迁移的过程中。本次分享主要介绍知乎应用 Kubernetes 管理容器集群的一些经验。

从 Mesos 到 Kubernetes

之前的调度框架是基于 Mesos 自研的。采用的语言是 Python。运行了大概两年多的时间了,也一直比较稳定。但随着业务的增长,现有的框架的问题逐渐暴露。

  1. 调度速度遇到瓶颈,影响大业务的部署速度。
  2. 不能很好的支持有状态服务。

解决上述问题的方案有两个,一个是对现有系统进行改进重构,另一个是迁移到 Kubernetes。我们最终选择迁移到 Kubernetes,主要基于以下考虑。

  1. Kubernetes 的架构设计简单明了,容器管理的抽像做的很好,重易进行复用和二次开发,没有必要造重复的轮子。比较典型的像Pod、Mesos 也已经引进了类似概念。
  2. Kubernetes 已经逐渐成为业界主流。社区很活跃,新的特性不断地被添加进来,这导致 Kubernetes 变的越来越重,但基本的架构和核心功能是一直比较稳定的。
  3. 相对于 Mesos 来讲,基于 Kubernetes 的开发成本是要低一些的,尤其是在熟悉之后。便于 k8s 的推广使用。除了主要的业务运行平台 bay,我们的负载均衡平台、Kafka 平台以及定时任务平台全部都是基本 Kubernetes 的。
阅读全文

Linkerd 使用指南

  categories:资料  author:

前言

该文章已归档到 kubernetes-handbook 第五章【领域应用】中,一切内容以 kubernetes-handbook 为准,该文档可能不会及时更新。以下内容参考:A Service Mesh for Kubernetes

Linkerd 作为一款 service mesh 与kubernetes 结合后主要有以下几种用法:

  1. 作为服务网关,可以监控 kubernetes 中的服务和实例
  2. 使用 TLS 加密服务
  3. 通过流量转移到持续交付
  4. 开发测试环境(Eat your own dog food)、Ingress 和边缘路由
  5. 给微服务做 staging
  6. 分布式 tracing
  7. 作为 Ingress controller
  8. 使用 gRPC 更方便

以下我们着重讲解在

阅读全文

编程成为英国小学必修课

  categories:资料  author:

在信息数字化时代,美国中小学用信息技术改变教学方式,而英国似乎更加重视提升信息技术作为基础课程的地位。     信息数字化时代到来,如何科学合理地把现代技术教给孩子,美国、英国都有了不小的动作。
美国蒙哥马利县7月中旬宣布,将于今年八月推出 “校园技术升级”计划,为公立学校提供4万台笔记本和平板电脑,并在未来几年迅速推广。
三年内将有10万台设备进入校园

蒙哥马利教学督导员Joshua P. Starr告诉澎湃新闻(www.thepaper.cn),蒙哥马利学校系统在2014-2015学年将为三年级至高三年级的学生提供谷歌笔记本,为幼儿园至二年级学生提供安卓系统的平板电脑。4万台设备中,大约3万台用于中小学,1万台用于高中社会学课堂。首批设备会分发给学区参加“现代技术项目”的67所学校,其余设备将陆续抵达全县的各所学校。根据这项计划,2017学年前将有10万台设备进入校园。

蒙哥马利县共有在校学生151000人,是马里兰州学生人数最多、招生规模增长最快的学校系统。此次技术升级计划并不是让学生人手一台移动设备,笔记本和平板电脑作为学区财产仅供学生在校使用,通过资源共享、可持续的方式推进技术升级。

为推进这项技术升级计划,蒙哥马利学校系统将承担1500万美元的费用,联邦教育补助项目(E-rate program)将提供补充资金。该项目是美国政府为应对数字鸿沟、针对全国各所学校以及图书馆设立的国家补助项目。

蒙哥马利教学督导员Joshua P. Starr告诉澎湃新闻,在21世纪,数字设备开辟了新的机会,让教育变得丰富多彩。这项计划的重点不是技术,而是提升传授学问和学习知识的过程,提供个性化的教学,给学生更好的学习体验,促进合作与创新。
云网络:打造教育新平台

近年来,蒙哥马利县致力于实现教育信息化,让所有的学生用上连接云网络的移动电脑。不少学校已经安装了无线网络和交互式白板,九所公立学校在去年率先参加试点,让学生使用谷歌笔记本和安卓系统平板电脑完成作业,如创建录像、博客、网站等。

实现教育信息化,推广平板电脑等“新式武器”只是第一步,创建云学习平台才是关键。蒙哥马利从去年起建设该平台,目前正在与谷歌合作推进该计划,将谷歌应用服务教育版(Google Apps for Education)打造为师生共用的云平台,该平台提供各种网络通信及合作应用,学生可以储存、提交、分享作业,在家里复习上课内容,老师也可以在线为学生辅导功课。

新平台将为传统的课堂教学带来重大变革。蒙哥马利学校科技人员Sherwin Collettet告诉澎湃新闻,云平台的信息储存功能和交互式的环境可以为教育提供便利,“许多学生作业不是一节课内能够完成的,一星期可能也不够。要给孩子一段时间,循序渐进完成任务,通过合作解决问题。”
基础教育信息化已成趋势

在美国,信息技术与基础教育正在不断融合,很多中小学在信息技术硬件方面已经走在了蒙哥马利的前面。

在华盛顿地区,几百所学校在课堂教学中引进了平板电脑,例如,乔治王子县为本县60所贫困学校的部分课堂购买了4500台iPad;费尔法克斯县则鼓励学生把家里的电子设备带到教室,越来越多的学校争相效仿;马萨诸塞州的阿灵顿推行试点项目,学生人手一台移动设备,该项目将在明年继续推广。
信息技术:既是手段也是内容

在这个信息数字化时代,美国中小学用信息技术改变教学方式,而英国似乎更加重视提升信息技术作为基础课程的地位。

自2012年起,英国教育大臣迈克尔 戈夫力推计算机课程改革。今年9月,改革措施即将生效:英国小学生从5岁起要学习使用算法公式编程编码,从11岁起学习程序设计语言,以及设计、储存、应用计算机指令。

迈克尔 戈夫告诉澎湃新闻,未来就业市场对这些技能的需求很大,课程改革将让孩子赢在起跑线上。

伦敦汉维克(Hanwick)小学的一名计算机教师表示,学生需要更好得了解计算机和网络的工作原理,教会他们编程不是最终目标,关键是要学会技术背后的思维方式,让他们在未来有能力判断选择什么工具来完成某项任务。

在汉维克小学,5、6年级的计算机课将了信息技术和其他学科结合在一起,跨科目的教学方式深受学生的喜爱。比如,一堂关于自然灾害的课上,学生不仅学习自然科学知识,还要动手拍摄录像、直播,创建网站、博客,制作火山爆发的基础动画;另一节课上,老师教授学生运用可下载的免费网络软件,制作电脑游戏。

英国计算机协会教育主任Bill Mitchell在接受英国每日电讯报和澎湃新闻采访时表示,随着信息技能的推广,学生将从被动的技术消费者转变为积极的使用者,更好地适应数字时代的发展。… 阅读全文

FreeWheel基于Kubernetes容器云构建与实践

  categories:资料  author:
【编者的话】随着公司业务不断发展以及逐渐向微服务的转变,我们借助于Kubernetes容器化解决方案来标准化和简化应用发布的整个流程,使原来需要大量人工维护和干预的工作变为自动化。本次内容主要是FreeWheel现阶段基于Kubernetes容器化经验和实践的总结,目标是提供一个持续、稳定、高效的容器云平台。

服务健康检查与自我恢复

对线上业务来说,保证服务的正常稳定是重中之重,对故障服务的及时处理避免影响业务以及快速恢复一直是开发运维的难点。Kubernetes提供了健康检查服务,对于检测到故障服务会被及时自动下线,以及通过重启服务的方式使服务自动恢复。

主要分享内容:

  1. 如何判断Container和Service的健康状态。
  2. 健康检查失败的Container和Service,如何自我恢复。
  3. 使用建议。

 

健康检查

使用Liveness及Readness探针
  • Liveness探针主要用于判断Container是否处于运行状态,比如当服务crash或者死锁等情况发生时,kubelet会kill掉Container,然后根据其设置的restart policy进行相应操作(可能会在本机重新启动Container,或者因为设置Kubernetes QoS,本机没有资源情况下会被分发的其他机器上重新启动)。
  • Readness探针主要用于判断服务是否已经正常工作,如果服务没有加载完成或工作异常,服务所在的Pod的IP地址会从服务的Endpoints中被移除,也就是说,当服务没有ready时,会将其从服务的load balancer中移除,不会再接受或响应任何请求。

探针处理Handler类型

无论对于Readness或Liveness探针,Handler均支持以下3种类型:ExecAction、TCPSocketAction、HTTPGetAction。每种类型说明与举例如下:

  • ExecAction:Container内部执行某个具体的命令,例子。
  • TCPSocketAction:通过Container的IP、port执行tcp进行检查, 例子。
  • HTTPGetAction:通过Container的IP、port、path,用HTTP Get请求进行检查,例子。

 

探针检查结果

探针检查结果分为3种情况:

  1. 成功(Success):通过检查。
  2. 失败(Failure):检查失败。
  3. 未知(Unknown):检查未知,需要人工干预。

 

健康检查总结
探针类型          说明                                 通过健康检查标准 
ExecAction       Container内部执行shell命令            shell命令返回
阅读全文

单点登录CAS服务端登录页添加验证码

  categories:资料  author:

 原理

啰嗦一句:这年头验证码一般用来防止帐号被暴力破解,若系统走专线(也就是说放在内网),那完全没必要搞验证码

1、由于CAS使用了SpringWebFlow,所以我们想在登录页表单中增加属性就直接找\WEB-INF\login-webflow.xml

2、在第84行<view-state id="viewLoginForm">中找到表单的两个属性,我们加一个

同样该标签中会发现model=”credential”配置,所以我们就在该文件找credential对应的实体类配置

发现是在第27行设置的,其值为org.jasig.cas.authentication.UsernamePasswordCredential

这是一个用来接收前台表单参数的JavaBean,我们这里要在表单上加一个参数captcha,所以继承它就行了

3、创建com.jadyer.sso.model.UsernamePasswordCaptchaCredential extends UsernamePasswordCredential

再加上captcha属性,及其对应的setter和getter

再修改login-webflow.xml第27行credential对应实体类为com.jadyer.sso.model.UsernamePasswordCaptchaCredential

4、接下来添加校验验证码的流程

继续看,这里我们会发现表单实际的提交等动作是由authenticationViaFormAction处理的

authenticationViaFormAction是被配置在cas-servlet.xml中的第233行

我们要在原有表单处理逻辑的基础上增加验证码,所以就扩展authenticationViaFormAction

创建com.jadyer.sso.authentication.AuthenticationViaCaptchaFormAction extends AuthenticationViaFormAction

在AuthenticationViaCaptchaFormAction中增加一个validateCaptcha()方法用来校验验证码

然后将cas-servlet.xml中的authenticationViaFormAction改为新扩展的AuthenticationViaCaptchaFormAction

同样login-webflow.xml中的三处authenticationViaFormAction改为新扩展的AuthenticationViaCaptchaFormAction

5、最后把messages.properties的一些提示文字改为中文

required.username=必须输入帐号

required.password=必须输入密码

required.captcha=必须输入验证码

error.authentication.captcha.bad=验证码不正确

authenticationFailure.AccountNotFoundException=登录失败–帐号不正确

authenticationFailure.FailedLoginException=登录失败–密码不正确

authenticationFailure.UNKNOWN=未知错误

代码

本文源码下载:(下面两个地址的文件的内容,都是一样的)

Github:https://github.com/v5java/demo-cas-server-web

CSDN下载:http://download.csdn.net/detail/jadyer/8906831

下面是login-webflow.xml

阅读全文

排除以war方式依赖的第三方工程中某jar或资源的方法

  categories:资料  author:

项目以war包方式依赖了公司统一开发平台,但平台中引入druid版本较低,业务中需要更高版本的druid,需要先排除掉平台中druid包,然后引入需要的版本,实现方式记录如下:

  • 1.先在Pom中正常排除掉低版本Jar
  • 2.在maven-war-plugin中排除掉对应的jar包
  • 3.引入所需jar包

需要说明是的第二步,之前以war包方式依赖的项目较少,排除方法不太了解,经指点要通过以下方式:

  <build>
    <plugins>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-war-plugin</artifactId>
        <version>3.2.2</version>
        <configuration>
          <overlays
阅读全文

简单免费的文档中心—dokuWiki搭建指南

  categories:资料  author:

引言

如果说知识就是力量,那么知识库就是弹药库了。不管是一个技术型企业,还是一个热衷技术的个人,如果能有一个能够方便记录、保存以及检索的知识库,想必是极好的。如果恰好你也并没有充足的预算去购买相应的商用解决方案,那么这篇文章兴许对你有点帮助。

Dokuwiki作为一个wiki引擎,软件主体十分小巧但功能非常强大而又灵活。它语法简单,为易写性、易读性提供保障。它提供权限管理和安全策略,能够保证信息库的安全性。它又是开源的,这给熟悉PHP的开发者留下了无限的可能。它还有一个十分活跃的社区论坛,在那里能找到很多关于安装和使用的有用信息,另外,非常丰富的扩展插件也诞生于此。如果有兴趣,你也可以注册一个账号,在社区论坛里提出需求和解决别人提出的需求。
如果提供一个中小团队或者个人使用,那么Dokuwiki非常合适。

最近因为项目需要,团队需要一个轻量级的文档中心。调研了一下,方案有以下几种:

  • Confluence:最有名,最强大,最通用,最老牌,Atlassian,公司级的wiki就是这货。缺点是团队超过10人用时需要付费,而且价格不菲。:( 忍痛Pass
  • Jekyll:著名开源博客工具,大有取代WordPress的趋势,部署相对简单,插件强大,完全免费。缺点是貌似只能够通过和Git交互来新建和更新文章,没有自带的编辑页面。
  • Dokuwiki:简单,轻量,支持PHP即可使用,插件丰富,权限控制强大,完全免费,有编辑页面,不懂代码也可以使用。缺点是缺乏对Markdown的原生支持(即使装了插件,也无法完全解析Markdown)

因此对比一番,果断选择Dokuwiki作为文档中心。

安装

首先去官网下载页面下载最新版本的Dokuwiki,根据自己需要动态打包,不需要安装:

下载页面

开启web容器

笔者环境是Mac,因此下文以mac为例。其它系统参考Dokuwiki的install页面.

Mac系统由于自带了apache,所以打开即可。先输入

sudo apachectl -v

查看系统apache版本,确认apache确实存在:

apache

确定apache确实存在之后,启动apache服务器:

sudo apachectl start

怎样验证apache服务器确实启动了呢?在浏览器输入“http://localhost”,如果发现“It Works!”的字眼,则说明系统成功启动。

apache index page

如何修改服务端口? 打开Finder,进入/etc/apache2/httpd.conf目录(cmd+Shift+G),编辑httpd.conf文件,找到

Listen 80

一行,改成你想要的端口即可。

至此,web 容器启动完成。

部署

Mac下Apach的DocumentRoot目录是

阅读全文

为什么一个锐角确定了三角函数值就确定了

  categories:资料  author:

为什么一个锐角确定了,三角函数值就确定了,今天老师告诉你答案

为什么一个锐角确定了,三角函数值就确定了,今天老师告诉你答案

很多同学在学数学的时候基础知识掌握不扎实,这时候家长采取的措施是打骂或让其回去看书的措施,那老师和家长有没有分析孩子们掌握不扎实的原因,分析原因才是最主要的,其实有很大一部分原因是孩子对基础知识不理解,如果整天是死记硬背得到的知识,他们很快就会忘记,并且他们也不敢兴趣,所以一定要把基础知识的原理搞明白,自然而然孩子的基础知识就很快记住了,并且基础知识也扎实了,他们也乐意学数学。今天老师就来给你们讲一个基础知识的原理:为什么一个锐角确定了,三角函数值就确定了,希望今天老师总结的知识对你有用。

首先我们来看一下下面的几个实例,得出原理。

通过上面的实例,我们知道当一个锐角是30度或45度时,它的对边比斜边一定是一个定值。那么对于锐角A的每一个确定的值,其对边与斜边的比值也是惟一确定的吗?接下来我们继续来研究。

通过上图中的研究我们知道:在直角三角形中,当锐角A的度数一定时,不管三角形的大小如何,∠A的对边与斜边的比也是一个固定值.在这里我们还引入了一个新的定义:正弦。在Rt△ABC中 ∠C=90 ,我们把锐角A的对边与斜边的比叫做∠ A的正弦,记作sinA。

刚才我们研究了对边比斜边,那接下来我们继续研究在直角三角形ABC中,∠C=90°,当∠A确定时,∠A的对边与斜边的比随之确定,此时,邻边与斜边的比及对边与邻边的比是否随之确定呢?为什么?请看下面的讲解:

通过上面的讲解,我们知道:在Rt△ABC中,在直角三角形中,当锐角A的度数一定时,不管三角形的大小如何, ∠A的∠A的邻边与斜边的比、 ∠A的对边与邻边的比是一个固定值.同时接下来,我们要引入新的两个定义:正切和余弦。

通过上面的讲解大家明白了为什么一个锐角确定了,三角函数值就确定了吧!其实一般的结论是根据相似得到的。请同学们认真看上面的讲解,把这个基础点理解,这对以后高中我们继续研究三角函数有着很重要的作用,讲到这里同学们可以课下做一下笔记,把证明三角函数的确定性整理一下,那这个知识点就明白了。最后希望老师今天分享的这个知识点对爱研究的你有所帮助。

 

来源: http://baijiahao.baidu.com/s?id=1640264048194315416

阅读全文


快乐成长 每天进步一点点      京ICP备18032580号-1